/usr/include/libqhull_r/index.htm is in libqhull-dev 2015.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 | <!-- Do not edit with Front Page, it adds too many spaces -->
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<title>Reentrant Qhull functions, macros, and data structures</title>
</head>
<body>
<!-- Navigation links -->
<p><a name="TOP"><b>Up:</b></a> <a
href="http://www.qhull.org">Home page</a> for Qhull<br>
<b>Up:</b> <a href="../../html/index.htm#TOC">Qhull manual</a>: Table of Contents <br>
<b>Up:</b> <a href="../../html/qh-quick.htm#programs">Programs</a>
• <a href="../../html/qh-quick.htm#options">Options</a>
• <a href="../../html/qh-opto.htm#output">Output</a>
• <a href="../../html/qh-optf.htm#format">Formats</a>
• <a href="../../html/qh-optg.htm#geomview">Geomview</a>
• <a href="../../html/qh-optp.htm#print">Print</a>
• <a href="../../html/qh-optq.htm#qhull">Qhull</a>
• <a href="../../html/qh-optc.htm#prec">Precision</a>
• <a href="../../html/qh-optt.htm#trace">Trace</a>
• <a href="index.htm">Functions</a><br>
<b>Up:</b> <a href="../../html/qh-code.htm#TOC">Qhull code</a><br>
<b>To:</b> <a href="#TOC">Qhull files</a><br>
<b>To:</b> <a href="qh-geom_r.htm">Geom</a> • <a href="qh-globa_r.htm">Global</a>
• <a href="qh-io_r.htm">Io</a> • <a href="qh-mem_r.htm">Mem</a>
• <a href="qh-merge_r.htm">Merge</a> • <a href="qh-poly_r.htm">Poly</a>
• <a href="qh-qhull_r.htm">Qhull</a> • <a href="qh-set_r.htm">Set</a>
• <a href="qh-stat_r.htm">Stat</a> • <a href="qh-user_r.htm">User</a>
<hr>
<!-- Main text of document. -->
<h1>Reentrant Qhull functions, macros, and data structures</h1>
<blockquote>
<p>The following sections provide an overview and index to
reentrant Qhull's functions, macros, and data structures.
Each section starts with an introduction.
See also <a href=../../html/qh-code.htm#library>Calling
Qhull from C programs</a> and <a href="../../html/qh-code.htm#cpp">Calling Qhull from C++ programs</a>.</p>
<p>Qhull uses the following conventions:</p>
<blockquote>
<ul>
<li>in code, global variables start with "qh "
<li>in documentation, global variables start with 'qh.'
<li>constants start with an upper case word
<li>important globals include an '_'
<li>functions, macros, and constants start with "qh_"</li>
<li>data types end in "T"</li>
<li>macros with arguments end in "_"</li>
<li>iterators are macros that use local variables</li>
<li>iterators for sets start with "FOREACH"</li>
<li>iterators for lists start with "FORALL"</li>
<li>qhull options are in single quotes (e.g., 'Pdn')</li>
<li>lists are sorted alphabetically</li>
<li>preprocessor directives on left margin for older compilers</li>
</ul>
</blockquote>
<p>
Reentrant Qhull is nearly the same as non-reentrant Qhull. In reentrant
Qhull, the qhT data structure is the first parameter to most functions. Qhull accesses
this data structure with 'qh->...'.
In non-reentrant Qhull, the global data structure is either a struct (qh_QHpointer==0)
or a pointer (qh_QHpointer==1). The non-reentrant code looks different because this data
structure is accessed via the 'qh' macro. This macro expands to 'qh_qh.' or 'qh_qh->' (resp.).
<p>
When reading code with an editor, a search for
'<i>"function</i>'
will locate the header of <i>qh_function</i>. A search for '<i>* function</i>'
will locate the tail of <i>qh_function</i>.
<p>A useful starting point is <a href="libqhull_r.h">libqhull_r.h</a>. It defines most
of Qhull data structures and top-level functions. Search for <i>'PFn'</i> to
determine the corresponding constant in Qhull. Search for <i>'Fp'</i> to
determine the corresponding <a href="libqhull_r.h#qh_PRINT">qh_PRINT...</a> constant.
Search <a href="io_r.c">io_r.c</a> to learn how the print function is implemented.</p>
<p>If your web browser is configured for .c and .h files, the function, macro, and data type links
go to the corresponding source location. To configure your web browser for .c and .h files.
<ul>
<li>In the Download Preferences or Options panel, add file extensions 'c' and 'h' to mime type 'text/html'.
<li>Opera 12.10
<ol>
<li>In Tools > Preferences > Advanced > Downloads
<li>Uncheck 'Hide file types opened with Opera'
<li>Quick find 'html'
<li>Select 'text/html' > Edit
<li>Add File extensions 'c,h,'
<li>Click 'OK'
</ol>
<li>Internet Explorer -- Mime types are not available from 'Internet Options'. Is there a registry key for these settings?
<li>Firefox -- Mime types are not available from 'Preferences'. Is there an add-on to change the file extensions for a mime type?
<li>Chrome -- Can Chrome be configured?
</ul>
<p>
Please report documentation and link errors
to <a href="mailto:qhull-bug@qhull.org">qhull-bug@qhull.org</a>.
</blockquote>
<p><b>Copyright © 1997-2015 C.B. Barber</b></p>
<hr>
<h2><a href="#TOP">»</a><a name="TOC">Qhull files</a> </h2>
<blockquote>
<p>This sections lists the .c and .h files for Qhull. Please
refer to these files for detailed information.</p>
<blockquote>
<dl>
<dt><a href="../../Makefile"><b>Makefile</b></a><b>, </b><a href="../../CMakeLists.txt"><b>CMakeLists.txt</b></a></dt>
<dd><tt>Makefile</tt> is preconfigured for gcc. <tt>CMakeLists.txt</tt> supports multiple
platforms with <a href=http://www.cmake.org/>CMake</a>.
Qhull includes project files for Visual Studio and Qt.
</dd>
<dt> </dt>
<dt><a href="libqhull_r.h"><b>libqhull_r.h</b></a> </dt>
<dd>Include file for the Qhull library (<tt>libqhull.so</tt>, <tt>qhull.dll</tt>, <tt>libqhullstatic.a</tt>).
Data structures are documented under <a href="qh-poly_r.htm">Poly</a>.
Global variables are documented under <a href="qh-globa_r.htm">Global</a>.
Other data structures and variables are documented under
<a href="qh-qhull_r.htm#TOC">Qhull</a> or <a href="qh-geom_r.htm"><b>Geom</b></a><b>.</b></dd>
<dt> </dt>
<dt><a href="qh-geom_r.htm"><b>Geom</b></a><b>, </b>
<a href="geom_r.h"><b>geom_r.h</b></a><b>, </b>
<a href="geom_r.c"><b>geom_r.c</b></a><b>, </b>
<a href="geom2_r.c"><b>geom2_r.c</b></a><b>, </b>
<a href="random_r.c"><b>random_r.c</b></a><b>, </b>
<a href="random_r.h"><b>random_r.h</b></a></dt>
<dd>Geometric routines. These routines implement mathematical
functions such as Gaussian elimination and geometric
routines needed for Qhull. Frequently used routines are
in <tt>geom_r.c</tt> while infrequent ones are in <tt>geom2_r.c</tt>.
</dd>
<dt> </dt>
<dt><a href="qh-globa_r.htm"><b>Global</b></a><b>, </b>
<a href="global_r.c"><b>global_r.c</b></a><b>, </b>
<a href="libqhull_r.h"><b>libqhull_r.h</b></a> </dt>
<dd>Global routines. Qhull uses a global data structure, <tt>qh</tt>,
to store globally defined constants, lists, sets, and
variables.
<tt>global_r.c</tt> initializes and frees these
structures. </dd>
<dt> </dt>
<dt><a href="qh-io_r.htm"><b>Io</b></a><b>, </b><a href="io_r.h"><b>io_r.h</b></a><b>,
</b><a href="io_r.c"><b>io_r.c</b></a> </dt>
<dd>Input and output routines. Qhull provides a wide range of
input and output options.</dd>
<dt> </dt>
<dt><a href="qh-mem_r.htm"><b>Mem</b></a><b>, </b>
<a href="mem_r.h"><b>mem_r.h</b></a><b>, </b>
<a href="mem_r.c"><b>mem_r.c</b></a> </dt>
<dd>Memory routines. Qhull provides memory allocation and
deallocation. It uses quick-fit allocation.</dd>
<dt> </dt>
<dt><a href="qh-merge_r.htm"><b>Merge</b></a><b>, </b>
<a href="merge_r.h"><b>merge_r.h</b></a><b>, </b>
<a href="merge_r.c"><b>merge_r.c</b></a> </dt>
<dd>Merge routines. Qhull handles precision problems by
merged facets or joggled input. These routines merge simplicial facets,
merge non-simplicial facets, merge cycles of facets, and
rename redundant vertices.</dd>
<dt> </dt>
<dt><a href="qh-poly_r.htm"><b>Poly</b></a><b>, </b>
<a href="poly_r.h"><b>poly_r.h</b></a><b>, </b>
<a href="poly_r.c"><b>poly_r.c</b></a><b>, </b>
<a href="poly2_r.c"><b>poly2_r.c</b></a><b>, </b>
<a href="libqhull_r.h"><b>libqhull_r.h</b></a> </dt>
<dd>Polyhedral routines. Qhull produces a polyhedron as a
list of facets with vertices, neighbors, ridges, and
geometric information. <tt>libqhull_r.h</tt> defines the main
data structures. Frequently used routines are in <tt>poly_r.c</tt>
while infrequent ones are in <tt>poly2_r.c</tt>.</dd>
<dt> </dt>
<dt><a href="qh-qhull_r.htm#TOC"><b>Qhull</b></a><b>, </b>
<a href="libqhull_r.c"><b>libqhull_r.c</b></a><b>, </b>
<a href="libqhull_r.h"><b>libqhull_r.h</b></a><b>, </b>
<a href="qhull_ra.h"><b>qhull_ra.h</b></a><b>, </b>
<a href="../qhull/unix_r.c"><b>unix_r.c</b></a> <b>, </b>
<a href="../qconvex/qconvex_r.c"><b>qconvex_r.c</b></a> <b>, </b>
<a href="../qdelaunay/qdelaun_r.c"><b>qdelaun_r.c</b></a> <b>, </b>
<a href="../qhalf/qhalf_r.c"><b>qhalf_r.c</b></a> <b>, </b>
<a href="../qvoronoi/qvoronoi_r.c"><b>qvoronoi_r.c</b></a> </dt>
<dd>Top-level routines. The Quickhull algorithm is
implemented by <tt>libqhull_r.c</tt>. <tt>qhull_ra.h</tt>
includes all header files. </dd>
<dt> </dt>
<dt><a href="qh-set_r.htm"><b>Set</b></a><b>, </b>
<a href="qset_r.h"><b>qset_r.h</b></a><b>, </b>
<a href="qset_r.c"><b>qset_r.c</b></a> </dt>
<dd>Set routines. Qhull implements its data structures as
sets. A set is an array of pointers that is expanded as
needed. This is a separate package that may be used in
other applications. </dd>
<dt> </dt>
<dt><a href="qh-stat_r.htm"><b>Stat</b></a><b>, </b>
<a href="stat_r.h"><b>stat_r.h</b></a><b>, </b>
<a href="stat_r.c"><b>stat_r.c</b></a> </dt>
<dd>Statistical routines. Qhull maintains statistics about
its implementation. </dd>
<dt> </dt>
<dt><a href="qh-user_r.htm"><b>User</b></a><b>, </b>
<a href="user_r.h"><b>user_r.h</b></a><b>, </b>
<a href="user_r.c"><b>user_r.c</b></a><b>, </b>
<a href="../user_eg/user_eg_r.c"><b>user_eg_r.c</b></a><b>, </b>
<a href="../user_eg2/user_eg2_r.c"><b>user_eg2_r.c</b></a><b>, </b>
<a href="../user_eg3/user_eg3_r.cpp"><b>user_eg3_r.cpp</b></a><b>, </b>
</dt>
<dd>User-defined routines. Qhull allows the user to configure
the code with defined constants and specialized routines.
</dd>
</dl>
</blockquote>
</blockquote>
<p><!-- Navigation links --> </p>
<hr>
<p><b>Up:</b>
<a href="http://www.qhull.org">Home page for
Qhull</a> <br>
<b>Up:</b> <a href="../../html/index.htm#TOC">Qhull manual: Table of Contents</a> <br>
<b>Up:</b> <a href="../../html/qh-quick.htm#programs">Programs</a>
• <a href="../../html/qh-quick.htm#options">Options</a>
• <a href="../../html/qh-opto.htm#output">Output</a>
• <a href="../../html/qh-optf.htm#format">Formats</a>
• <a href="../../html/qh-optg.htm#geomview">Geomview</a>
• <a href="../../html/qh-optp.htm#print">Print</a>
• <a href="../../html/qh-optq.htm#qhull">Qhull</a>
• <a href="../../html/qh-optc.htm#prec">Precision</a>
• <a href="../../html/qh-optt.htm#trace">Trace</a>
• <a href="index.htm">Functions</a><br>
<b>Up:</b> <a href="../../html/qh-code.htm#TOC">Qhull code: Table of Contents</a> <br>
<b>To:</b> <a href="#TOC">Qhull files</a><br>
<b>To:</b> <a href="qh-geom_r.htm">Geom</a> •
<a href="qh-globa_r.htm">Global</a> • <a href="qh-io_r.htm">Io</a>
• <a href="qh-mem_r.htm">Mem</a> • <a href="qh-merge_r.htm">Merge</a>
• <a href="qh-poly_r.htm">Poly</a> • <a href="qh-qhull_r.htm#TOC">Qhull</a>
• <a href="qh-set_r.htm">Set</a> • <a href="qh-stat_r.htm">Stat</a>
• <a href="qh-user_r.htm">User</a><br>
<p><!-- GC common information --> </p>
<hr>
<p><a href="http://www.geom.uiuc.edu/"><img
src="../../html/qh--geom.gif" align="middle" width="40" height="40"></a><i>The
Geometry Center Home Page </i></p>
<p>Comments to: <a href=mailto:qhull@qhull.org>qhull@qhull.org</a>
</a><br>
Created: May 2, 1997 --- <!-- hhmts start --> Last modified: see top <!-- hhmts end --> </p>
</body>
</html>
|