source: tspsg-svn/trunk/docs/html/globals_8h_source.html @ 94

Last change on this file since 94 was 84, checked in by laleppa, 15 years ago

Documentation update...

File size: 15.2 KB
Line 
1<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6<title>TSPSG: TSP Solver and Generator: src/globals.h Source File</title>
7<link href="tabs.css" rel="stylesheet" type="text/css"/>
8<link href="search/search.css" rel="stylesheet" type="text/css"/>
9<script type="text/javaScript" src="search/search.js"></script>
10<link href="doxygen.css" rel="stylesheet" type="text/css"/>
11</head>
12<body onload='searchBox.OnSelectItem(0);'>
13<!-- Generated by Doxygen 1.6.1 -->
14<script type="text/javascript"><!--
15var searchBox = new SearchBox("searchBox", "search",false,'Search');
16--></script>
17<script type="text/javascript">
18<!--
19function changeDisplayState (e){
20  var num=this.id.replace(/[^[0-9]/g,'');
21  var button=this.firstChild;
22  var sectionDiv=document.getElementById('dynsection'+num);
23  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
24    sectionDiv.style.display='block';
25    button.src='open.gif';
26  }else{
27    sectionDiv.style.display='none';
28    button.src='closed.gif';
29  }
30}
31function initDynSections(){
32  var divs=document.getElementsByTagName('div');
33  var sectionCounter=1;
34  for(var i=0;i<divs.length-1;i++){
35    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
36      var header=divs[i];
37      var section=divs[i+1];
38      var button=header.firstChild;
39      if (button!='IMG'){
40        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
41        button=document.createElement('img');
42        divs[i].insertBefore(button,divs[i].firstChild);
43      }
44      header.style.cursor='pointer';
45      header.onclick=changeDisplayState;
46      header.id='dynheader'+sectionCounter;
47      button.src='closed.gif';
48      section.id='dynsection'+sectionCounter;
49      section.style.display='none';
50      section.style.marginLeft='14px';
51      sectionCounter++;
52    }
53  }
54}
55window.onload = initDynSections;
56-->
57</script>
58<div class="navigation" id="top">
59  <div class="tabs">
60    <ul>
61      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
62      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
63      <li><a href="annotated.html"><span>Classes</span></a></li>
64      <li class="current"><a href="files.html"><span>Files</span></a></li>
65      <li>
66        <div id="MSearchBox" class="MSearchBoxInactive">
67        <img id="MSearchSelect" src="search/search.png"
68             onmouseover="return searchBox.OnSearchSelectShow()"
69             onmouseout="return searchBox.OnSearchSelectHide()"
70             alt=""/>
71        <input type="text" id="MSearchField" value="Search" accesskey="S"
72             onfocus="searchBox.OnSearchFieldFocus(true)" 
73             onblur="searchBox.OnSearchFieldFocus(false)" 
74             onkeyup="searchBox.OnSearchFieldChange(event)"/>
75        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
76        </div>
77      </li>
78    </ul>
79  </div>
80  <div class="tabs">
81    <ul>
82      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
83      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
84    </ul>
85  </div>
86<h1>src/globals.h</h1><a href="globals_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001
87<a name="l00028"></a>00028 <span class="preprocessor">#ifndef GLOBALS_H</span>
88<a name="l00029"></a>00029 <span class="preprocessor"></span><span class="preprocessor">#define GLOBALS_H</span>
89<a name="l00030"></a>00030 <span class="preprocessor"></span>
90<a name="l00031"></a>00031 <span class="comment">// INCLUDES</span>
91<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;QtCore&gt;</span>
92<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;QtGui&gt;</span>
93<a name="l00034"></a>00034
94<a name="l00035"></a>00035 <span class="comment">// Version info</span>
95<a name="l00036"></a>00036 <span class="preprocessor">#include &quot;<a class="code" href="version_8h.html" title="Contains TSPSG version information defines.">version.h</a>&quot;</span>
96<a name="l00037"></a>00037 <span class="comment">// OS and ARCH detection</span>
97<a name="l00038"></a>00038 <span class="preprocessor">#include &quot;<a class="code" href="os_8h.html" title="Contains TSPSG target CPU architecture and OS detection.">os.h</a>&quot;</span>
98<a name="l00039"></a>00039
99<a name="l00040"></a>00040 <span class="comment">// DEFINES</span>
100<a name="l00041"></a>00041 <span class="comment">// Default values</span>
101<a name="l00043"></a><a class="code" href="globals_8h.html#a21dd408136bbab225a4f5e2c42f85643">00043</a> <span class="comment"></span><span class="preprocessor">#define DEF_RAND_MIN 1</span>
102<a name="l00045"></a><a class="code" href="globals_8h.html#af9914e148840572bac46f451db4cb6e5">00045</a> <span class="preprocessor">#define DEF_RAND_MAX 10</span>
103<a name="l00047"></a><a class="code" href="globals_8h.html#a4d1fa8b5b2b213595f30e55d75070ed2">00047</a> <span class="preprocessor">#define DEF_NUM_CITIES 5</span>
104<a name="l00048"></a>00048 <span class="preprocessor"></span>
105<a name="l00052"></a>00052 <span class="preprocessor">#ifdef Q_OS_WINCE</span>
106<a name="l00053"></a>00053 <span class="preprocessor"></span><span class="preprocessor">    #define DEF_USE_NATIVE_DIALOGS false</span>
107<a name="l00054"></a>00054 <span class="preprocessor"></span><span class="preprocessor">#else</span>
108<a name="l00055"></a><a class="code" href="globals_8h.html#a6bbdc41d8e9d2d8050fb973f058a5521">00055</a> <span class="preprocessor"></span><span class="preprocessor">    #define DEF_USE_NATIVE_DIALOGS true</span>
109<a name="l00056"></a>00056 <span class="preprocessor"></span><span class="preprocessor">#endif // Q_OS_WINCE</span>
110<a name="l00058"></a><a class="code" href="globals_8h.html#a26cf35c10c1ed2eab930d839284842c6">00058</a> <span class="preprocessor">#define DEF_AUTOSIZE true</span>
111<a name="l00060"></a><a class="code" href="globals_8h.html#ad983bd19a9662c6cb6fe5ba981cbdbf4">00060</a> <span class="preprocessor">#define DEF_SAVEPOS false</span>
112<a name="l00062"></a><a class="code" href="globals_8h.html#a4a1e6c04461eabfc0cc0941d342ecfb4">00062</a> <span class="preprocessor">#define DEF_FRACTIONAL_RANDOM false</span>
113<a name="l00064"></a><a class="code" href="globals_8h.html#a616d74fa946123f424193b007d5a6382">00064</a> <span class="preprocessor">#define DEF_SHOW_MATRIX true</span>
114<a name="l00066"></a><a class="code" href="globals_8h.html#ae37fe7eb909d7fd076f067900e900c0e">00066</a> <span class="preprocessor">#define DEF_USE_SHOW_MATRIX_LIMIT true</span>
115<a name="l00068"></a><a class="code" href="globals_8h.html#a261331d449328e53926027d021757d57">00068</a> <span class="preprocessor">#define DEF_SHOW_MATRIX_LIMIT 15</span>
116<a name="l00070"></a><a class="code" href="globals_8h.html#a6831bc2c2f11c3a14382c8fbe8d87efe">00070</a> <span class="preprocessor">#define DEF_SCROLL_TO_END true</span>
117<a name="l00072"></a><a class="code" href="globals_8h.html#a2982eb0f2aea4cff78bd4aa767ff1988">00072</a> <span class="preprocessor">#define DEF_FONT_FAMILY &quot;Courier New&quot;</span>
118<a name="l00074"></a><a class="code" href="globals_8h.html#ab73bf542bad61b0b720c0495ef612105">00074</a> <span class="preprocessor">#define DEF_FONT_SIZE 10</span>
119<a name="l00076"></a><a class="code" href="globals_8h.html#a6bbeb8fbbb2c6ec31993ff56f6b695e3">00076</a> <span class="preprocessor">#define DEF_FONT_COLOR Qt::black</span>
120<a name="l00077"></a>00077 <span class="preprocessor"></span>
121<a name="l00079"></a><a class="code" href="globals_8h.html#a70edda218af688662bb006cf0552544e">00079</a> <span class="preprocessor">#define MAX_NUM_CITIES 50</span>
122<a name="l00081"></a><a class="code" href="globals_8h.html#a1703614f274735e91c1539048ef1093f">00081</a> <span class="preprocessor">#define MAX_RAND_VALUE 1000</span>
123<a name="l00082"></a>00082 <span class="preprocessor"></span>
124<a name="l00083"></a>00083 <span class="comment">// Paths</span>
125<a name="l00092"></a>00092 <span class="comment"></span><span class="preprocessor">#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)</span>
126<a name="l00093"></a>00093 <span class="preprocessor"></span><span class="preprocessor">    #define PATH_I18N &quot;/usr/share/tspsg/i18n&quot;</span>
127<a name="l00094"></a>00094 <span class="preprocessor"></span><span class="preprocessor">    #define PATH_DOCS &quot;/usr/share/doc/tspsg&quot;</span>
128<a name="l00095"></a>00095 <span class="preprocessor"></span><span class="preprocessor">#else</span>
129<a name="l00096"></a><a class="code" href="globals_8h.html#ab1289b7280bd75b023ef2d5b19880af9">00096</a> <span class="preprocessor"></span><span class="preprocessor">    #define PATH_I18N &quot;i18n&quot;</span>
130<a name="l00097"></a><a class="code" href="globals_8h.html#a93de9563d724c12880c908961ca78dae">00097</a> <span class="preprocessor"></span><span class="preprocessor">    #define PATH_DOCS &quot;help&quot;</span>
131<a name="l00098"></a>00098 <span class="preprocessor"></span><span class="preprocessor">#endif // Q_OS_LINUX</span>
132<a name="l00099"></a>00099 <span class="preprocessor"></span>
133<a name="l00101"></a><a class="code" href="globals_8h.html#abd9c3c65456a20b4b281165a29583e78">00101</a> <span class="preprocessor">#define TSPT quint32(0x54535054)</span>
134<a name="l00103"></a><a class="code" href="globals_8h.html#afc611d658b90f441ae837a2478b5bdb1">00103</a> <span class="preprocessor">#define TSPT_VERSION quint8(1)</span>
135<a name="l00105"></a><a class="code" href="globals_8h.html#a4c516e985c6e8edf1b54bcd7c15ad89c">00105</a> <span class="preprocessor">#define TSPT_META_VERSION quint8(1)</span>
136<a name="l00107"></a><a class="code" href="globals_8h.html#a98ea46119cfda59f7b9c6f50ef72636e">00107</a> <span class="preprocessor">#define TSPT_META_SIZE 2</span>
137<a name="l00109"></a><a class="code" href="globals_8h.html#a437bcbf6414d33f7a885a4507c1b9940">00109</a> <span class="preprocessor">#define ZKT quint16(0x5A4B)</span>
138<a name="l00111"></a><a class="code" href="globals_8h.html#ab6d630d0a03e4e53fceb0567653ca629">00111</a> <span class="preprocessor">#define ZKT_VERSION quint8(1)</span>
139<a name="l00112"></a>00112 <span class="preprocessor"></span>
140<a name="l00120"></a>00120 <span class="preprocessor">#ifdef INFINITY</span>
141<a name="l00121"></a>00121 <span class="preprocessor"></span><span class="preprocessor">    #undef INFINITY</span>
142<a name="l00122"></a>00122 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
143<a name="l00123"></a><a class="code" href="globals_8h.html#a956e2723d559858d08644ac99146e910">00123</a> <span class="preprocessor"></span><span class="preprocessor">#define INFINITY 1.7E+308</span>
144<a name="l00125"></a><a class="code" href="globals_8h.html#a1ae8033146e07fa0bae37f148b90cd6b">00125</a> <span class="preprocessor">#define INFSTR &quot;---&quot;</span>
145<a name="l00126"></a>00126 <span class="preprocessor"></span>
146<a name="l00127"></a>00127 <span class="comment">// FUNCTIONS</span>
147<a name="l00133"></a><a class="code" href="globals_8h.html#a594842d2fcaf774c3c42b944f3f031d2">00133</a> <span class="comment"></span><span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="globals_8h.html#a594842d2fcaf774c3c42b944f3f031d2" title="Checks whether x contains an integer value.">isInteger</a>(<span class="keywordtype">double</span> x)
148<a name="l00134"></a>00134 {
149<a name="l00135"></a>00135 <span class="keywordtype">double</span> i;
150<a name="l00136"></a>00136     <span class="keywordflow">return</span> (modf(x, &amp;i) == 0.0);
151<a name="l00137"></a>00137 }
152<a name="l00138"></a>00138
153<a name="l00139"></a>00139 <span class="comment">// Sanity checks</span>
154<a name="l00140"></a>00140 <span class="comment">// Check that default number of cities is sane (&lt;= MAX_NUM_CITIES)</span>
155<a name="l00141"></a>00141 <span class="preprocessor">#if DEF_NUM_CITIES &gt; MAX_NUM_CITIES</span>
156<a name="l00142"></a>00142 <span class="preprocessor"></span><span class="preprocessor">    #undef DEF_NUM_CITIES</span>
157<a name="l00143"></a>00143 <span class="preprocessor"></span><span class="preprocessor">    #define DEF_NUM_CITIES MAX_NUM_CITIES</span>
158<a name="l00144"></a>00144 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
159<a name="l00145"></a>00145 <span class="preprocessor"></span><span class="comment">// Check that maximum for random generation is sane (&lt;= MAX_RAND_VALUE)</span>
160<a name="l00146"></a>00146 <span class="preprocessor">#if DEF_RAND_MAX &gt; MAX_RAND_VALUE</span>
161<a name="l00147"></a>00147 <span class="preprocessor"></span><span class="preprocessor">    #undef DEF_RAND_MAX</span>
162<a name="l00148"></a>00148 <span class="preprocessor"></span><span class="preprocessor">    #define DEF_RAND_MAX MAX_RAND_VALUE</span>
163<a name="l00149"></a>00149 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
164<a name="l00150"></a>00150 <span class="preprocessor"></span><span class="comment">// Check that DEF_RAND_MIN &lt;= DEF_RAND_MAX</span>
165<a name="l00151"></a>00151 <span class="preprocessor">#if DEF_RAND_MIN &gt; DEF_RAND_MAX</span>
166<a name="l00152"></a>00152 <span class="preprocessor"></span><span class="preprocessor">    #undef DEF_RAND_MIN</span>
167<a name="l00153"></a>00153 <span class="preprocessor"></span><span class="preprocessor">    #define DEF_RAND_MIN DEF_RAND_MAX</span>
168<a name="l00154"></a>00154 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
169<a name="l00155"></a>00155 <span class="preprocessor"></span>
170<a name="l00156"></a>00156 <span class="preprocessor">#endif // GLOBALS_H</span>
171</pre></div></div>
172<!--- window showing the filter options -->
173<div id="MSearchSelectWindow"
174     onmouseover="return searchBox.OnSearchSelectShow()"
175     onmouseout="return searchBox.OnSearchSelectHide()"
176     onkeydown="return searchBox.OnSearchSelectKey(event)">
177<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>
178
179<!-- iframe showing the search results (closed by default) -->
180<div id="MSearchResultsWindow">
181<iframe src="" frameborder="0" 
182        name="MSearchResults" id="MSearchResults">
183</iframe>
184</div>
185
186<hr size="1"/><address style="text-align: right;"><small>Generated on Thu Jan 7 18:22:42 2010 for TSPSG: TSP Solver and Generator by&nbsp;
187<a href="http://www.doxygen.org/index.html">
188<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
189</body>
190</html>
Note: See TracBrowser for help on using the repository browser.