qhull_ra.h
Go to the documentation of this file.
1 /*<html><pre> -<a href="qh-qhull_r.htm"
2  >-------------------------------</a><a name="TOP">-</a>
3 
4  qhull_ra.h
5  all header files for compiling qhull with reentrant code
6  included before C++ headers for user_r.h:QHULL_CRTDBG
7 
8  see qh-qhull.htm
9 
10  see libqhull_r.h for user-level definitions
11 
12  see user_r.h for user-definable constants
13 
14  defines internal functions for libqhull_r.c global_r.c
15 
16  Copyright (c) 1993-2015 The Geometry Center.
17  $Id: //main/2015/qhull/src/libqhull_r/qhull_ra.h#5 $$Change: 2062 $
18  $DateTime: 2016/01/17 13:13:18 $$Author: bbarber $
19 
20  Notes: grep for ((" and (" to catch fprintf("lkasdjf");
21  full parens around (x?y:z)
22  use '#include "libqhull_r/qhull_ra.h"' to avoid name clashes
23 */
24 
25 #ifndef qhDEFqhulla
26 #define qhDEFqhulla 1
27 
28 #include "libqhull_r.h" /* Includes user_r.h and data types */
29 
30 #include "stat_r.h"
31 #include "random_r.h"
32 #include "mem_r.h"
33 #include "qset_r.h"
34 #include "geom_r.h"
35 #include "merge_r.h"
36 #include "poly_r.h"
37 #include "io_r.h"
38 
39 #include <setjmp.h>
40 #include <string.h>
41 #include <math.h>
42 #include <float.h> /* some compilers will not need float.h */
43 #include <limits.h>
44 #include <time.h>
45 #include <ctype.h>
46 #include <stdio.h>
47 #include <stdlib.h>
48 /*** uncomment here and qset_r.c
49  if string.h does not define memcpy()
50 #include <memory.h>
51 */
52 
53 #if qh_CLOCKtype == 2 /* defined in user_r.h from libqhull_r.h */
54 #include <sys/types.h>
55 #include <sys/times.h>
56 #include <unistd.h>
57 #endif
58 
59 #ifdef _MSC_VER /* Microsoft Visual C++ -- warning level 4 */
60 #pragma warning( disable : 4100) /* unreferenced formal parameter */
61 #pragma warning( disable : 4127) /* conditional expression is constant */
62 #pragma warning( disable : 4706) /* assignment within conditional function */
63 #pragma warning( disable : 4996) /* function was declared deprecated(strcpy, localtime, etc.) */
64 #endif
65 
66 /* ======= -macros- =========== */
67 
68 /*-<a href="qh-qhull_r.htm#TOC"
69  >--------------------------------</a><a name="traceN">-</a>
70 
71  traceN((qh, qh->ferr, 0Nnnn, "format\n", vars));
72  calls qh_fprintf if qh.IStracing >= N
73 
74  Add debugging traps to the end of qh_fprintf
75 
76  notes:
77  removing tracing reduces code size but doesn't change execution speed
78 */
79 #ifndef qh_NOtrace
80 #define trace0(args) {if (qh->IStracing) qh_fprintf args;}
81 #define trace1(args) {if (qh->IStracing >= 1) qh_fprintf args;}
82 #define trace2(args) {if (qh->IStracing >= 2) qh_fprintf args;}
83 #define trace3(args) {if (qh->IStracing >= 3) qh_fprintf args;}
84 #define trace4(args) {if (qh->IStracing >= 4) qh_fprintf args;}
85 #define trace5(args) {if (qh->IStracing >= 5) qh_fprintf args;}
86 #else /* qh_NOtrace */
87 #define trace0(args) {}
88 #define trace1(args) {}
89 #define trace2(args) {}
90 #define trace3(args) {}
91 #define trace4(args) {}
92 #define trace5(args) {}
93 #endif /* qh_NOtrace */
94 
95 /*-<a href="qh-qhull_r.htm#TOC"
96  >--------------------------------</a><a name="QHULL_UNUSED">-</a>
97 
98  Define an unused variable to avoid compiler warnings
99 
100  Derived from Qt's corelib/global/qglobal.h
101 
102 */
103 
104 #if defined(__cplusplus) && defined(__INTEL_COMPILER) && !defined(QHULL_OS_WIN)
105 template <typename T>
106 inline void qhullUnused(T &x) { (void)x; }
107 # define QHULL_UNUSED(x) qhullUnused(x);
108 #else
109 # define QHULL_UNUSED(x) (void)x;
110 #endif
111 
112 /***** -libqhull_r.c prototypes (alphabetical after qhull) ********************/
113 
114 void qh_qhull(qhT *qh);
115 boolT qh_addpoint(qhT *qh, pointT *furthest, facetT *facet, boolT checkdist);
116 void qh_buildhull(qhT *qh);
117 void qh_buildtracing(qhT *qh, pointT *furthest, facetT *facet);
119 void qh_errexit2(qhT *qh, int exitcode, facetT *facet, facetT *otherfacet);
120 void qh_findhorizon(qhT *qh, pointT *point, facetT *facet, int *goodvisible,int *goodhorizon);
121 pointT *qh_nextfurthest(qhT *qh, facetT **visible);
122 void qh_partitionall(qhT *qh, setT *vertices, pointT *points,int npoints);
123 void qh_partitioncoplanar(qhT *qh, pointT *point, facetT *facet, realT *dist);
124 void qh_partitionpoint(qhT *qh, pointT *point, facetT *facet);
125 void qh_partitionvisible(qhT *qh, boolT allpoints, int *numpoints);
126 void qh_precision(qhT *qh, const char *reason);
127 void qh_printsummary(qhT *qh, FILE *fp);
128 
129 /***** -global_r.c internal prototypes (alphabetical) ***********************/
130 
131 void qh_appendprint(qhT *qh, qh_PRINT format);
132 void qh_freebuild(qhT *qh, boolT allmem);
133 void qh_freebuffers(qhT *qh);
134 void qh_initbuffers(qhT *qh, coordT *points, int numpoints, int dim, boolT ismalloc);
135 
136 /***** -stat_r.c internal prototypes (alphabetical) ***********************/
137 
138 void qh_allstatA(qhT *qh);
139 void qh_allstatB(qhT *qh);
140 void qh_allstatC(qhT *qh);
141 void qh_allstatD(qhT *qh);
142 void qh_allstatE(qhT *qh);
143 void qh_allstatE2(qhT *qh);
144 void qh_allstatF(qhT *qh);
145 void qh_allstatG(qhT *qh);
146 void qh_allstatH(qhT *qh);
147 void qh_freebuffers(qhT *qh);
148 void qh_initbuffers(qhT *qh, coordT *points, int numpoints, int dim, boolT ismalloc);
149 
150 #endif /* qhDEFqhulla */
coordT
#define coordT
Definition: libqhull.h:80
qh_allstatG
void qh_allstatG(qhT *qh)
Definition: stat_r.c:210
qh_precision
void qh_precision(qhT *qh, const char *reason)
Definition: libqhull_r.c:1180
qh_allstatF
void qh_allstatF(qhT *qh)
Definition: stat_r.c:181
qh_appendprint
void qh_appendprint(qhT *qh, qh_PRINT format)
Definition: global_r.c:51
qh_allstatD
void qh_allstatD(qhT *qh)
Definition: stat_r.c:114
merge_r.h
qh_freebuild
void qh_freebuild(qhT *qh, boolT allmem)
Definition: global_r.c:332
qh_findhorizon
void qh_findhorizon(qhT *qh, pointT *point, facetT *facet, int *goodvisible, int *goodhorizon)
Definition: libqhull_r.c:556
qh_partitionvisible
void qh_partitionvisible(qhT *qh, boolT allpoints, int *numpoints)
Definition: libqhull_r.c:1117
random_r.h
realT
#define realT
Definition: user.h:154
qh_allstatB
void qh_allstatB(qhT *qh)
Definition: stat_r.c:52
qh_addpoint
boolT qh_addpoint(qhT *qh, pointT *furthest, facetT *facet, boolT checkdist)
Definition: libqhull_r.c:168
geom_r.h
qhT
Definition: libqhull.h:465
qh_errexit2
void qh_errexit2(qhT *qh, int exitcode, facetT *facet, facetT *otherfacet)
Definition: libqhull_r.c:521
qh_freebuffers
void qh_freebuffers(qhT *qh)
Definition: global_r.c:268
facetT
Definition: libqhull.h:262
qh_allstatE2
void qh_allstatE2(qhT *qh)
Definition: stat_r.c:162
qh_partitionpoint
void qh_partitionpoint(qhT *qh, pointT *point, facetT *facet)
Definition: libqhull_r.c:1005
qh_buildhull
void qh_buildhull(qhT *qh)
Definition: libqhull_r.c:364
boolT
#define boolT
Definition: libqhull.h:121
stat_r.h
setT
Definition: qset.h:83
poly_r.h
libqhull_r.h
qh
#define qh
Definition: libqhull.h:457
qh_partitionall
void qh_partitionall(qhT *qh, setT *vertices, pointT *points, int npoints)
Definition: libqhull_r.c:777
qh_allstatC
void qh_allstatC(qhT *qh)
Definition: stat_r.c:82
qh_partitioncoplanar
void qh_partitioncoplanar(qhT *qh, pointT *point, facetT *facet, realT *dist)
Definition: libqhull_r.c:896
qh_PRINT
qh_PRINT
Definition: libqhull.h:161
qh_nextfurthest
pointT * qh_nextfurthest(qhT *qh, facetT **visible)
Definition: libqhull_r.c:662
x
x
qh_allstatE
void qh_allstatE(qhT *qh)
Definition: stat_r.c:140
qh_allstatH
void qh_allstatH(qhT *qh)
Definition: stat_r.c:233
io_r.h
qh_initbuffers
void qh_initbuffers(qhT *qh, coordT *points, int numpoints, int dim, boolT ismalloc)
qh_qhull
void qh_qhull(qhT *qh)
Definition: libqhull_r.c:60
pointT
#define pointT
Definition: libqhull.h:96
mem_r.h
qh_printsummary
void qh_printsummary(qhT *qh, FILE *fp)
Definition: libqhull_r.c:1205
qh_build_withrestart
void qh_build_withrestart(qhT *qh)
Definition: libqhull_r.c:290
qh_buildtracing
void qh_buildtracing(qhT *qh, pointT *furthest, facetT *facet)
Definition: libqhull_r.c:435
qset_r.h
qh_allstatA
void qh_allstatA(qhT *qh)
Definition: stat_r.c:28


hpp-fcl
Author(s):
autogenerated on Fri Aug 2 2024 02:45:14