BRL-CAD
raytrace.h
Go to the documentation of this file.
1 /* R A Y T R A C E . H
2  * BRL-CAD
3  *
4  * Copyright (c) 1993-2024 United States Government as represented by
5  * the U.S. Army Research Laboratory.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public License
9  * version 2.1 as published by the Free Software Foundation.
10  *
11  * This library is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this file; see the file named COPYING for more
18  * information.
19  */
20 /** @addtogroup librt */
21 /** @{ */
22 /** @file raytrace.h
23  *
24  * All the data structures and manifest constants necessary for
25  * interacting with the BRL-CAD LIBRT ray-tracing library.
26  *
27  * Note that this header file defines many internal data structures,
28  * as well as the library's external (interface) data structures.
29  * These are provided for the convenience of applications builders.
30  * However, the internal data structures are subject to change in each
31  * release.
32  *
33  */
34 
35 /* TODO - put together a dot file mapping the relationships between
36  * high level rt structures and include it in the doxygen comments
37  * with the \dotfile command:
38  * http://www.stack.nl/~dimitri/doxygen/manual/commands.html#cmddotfile*/
39 
40 #ifndef RAYTRACE_H
41 #define RAYTRACE_H
42 
43 #include "common.h"
44 
45 /* interface headers */
46 #include "bu/avs.h"
47 #include "bu/bitv.h"
48 #include "bu/file.h"
49 #include "bu/hash.h"
50 #include "bu/hist.h"
51 #include "bu/malloc.h"
52 #include "bu/mapped_file.h"
53 #include "bu/list.h"
54 #include "bu/log.h"
55 #include "bu/parallel.h" /* needed for BU_SEM_LAST */
56 #include "bu/parse.h"
57 #include "bu/ptbl.h"
58 #include "bu/str.h"
59 #include "bu/vls.h"
60 #include "bn.h"
61 #include "./rt/db5.h"
62 #include "nmg.h"
63 // Note - libpc development is not currently active. Should unwire this
64 #include "pc.h"
65 #include "./rt/geom.h"
66 
67 __BEGIN_DECLS
68 
69 #include "./rt/defines.h"
70 
71 #include "./rt/db_fullpath.h"
72 
73 #include "./rt/debug.h"
74 
75 #include "./rt/tol.h"
76 
77 #include "./rt/db_internal.h"
78 
79 #include "./rt/xray.h"
80 
81 #include "./rt/hit.h"
82 
83 #include "./rt/seg.h"
84 
85 #include "./rt/soltab.h"
86 
87 #include "./rt/mater.h"
88 
89 #include "./rt/region.h"
90 
91 #include "./rt/ray_partition.h"
92 
93 #include "./rt/space_partition.h"
94 
95 #include "./rt/mem.h"
96 
97 #include "./rt/db_instance.h"
98 
99 #include "./rt/directory.h"
100 
101 #include "./rt/nongeom.h"
102 
103 #include "./rt/tree.h"
104 
105 #include "./rt/wdb.h"
106 
107 #include "./rt/anim.h"
108 
109 #include "./rt/piece.h"
110 
111 #include "./rt/resource.h"
112 
113 #include "./rt/application.h"
114 
115 #include "./rt/global.h"
116 
117 #include "./rt/rt_instance.h"
118 
119 #include "./rt/view.h"
120 
121 #include "./rt/func.h"
122 
123 #include "./rt/functab.h"
124 
125 #include "./rt/private.h"
126 
127 #include "./rt/nmg_conv.h"
128 
129 #include "./rt/overlap.h"
130 
131 #include "./rt/pattern.h"
132 
133 #include "./rt/shoot.h"
134 
135 #include "./rt/timer.h"
136 
137 #include "./rt/boolweave.h"
138 
139 #include "./rt/calc.h"
140 
141 #include "./rt/cmd.h"
142 
143 #include "./rt/search.h"
144 
145 #include "./rt/db_io.h"
146 
147 #include "./rt/primitives/arb8.h"
148 #include "./rt/primitives/epa.h"
149 #include "./rt/primitives/pipe.h"
151 #include "./rt/primitives/rpc.h"
152 #include "./rt/primitives/pg.h"
153 #include "./rt/primitives/hf.h"
154 #include "./rt/primitives/dsp.h"
155 #include "./rt/primitives/ell.h"
156 #include "./rt/primitives/tgc.h"
157 #include "./rt/primitives/sketch.h"
158 #include "./rt/primitives/annot.h"
159 #include "./rt/primitives/script.h"
160 #include "./rt/primitives/bot.h"
161 #include "./rt/primitives/brep.h"
162 #include "./rt/primitives/tor.h"
163 #include "./rt/primitives/rhc.h"
164 #include "./rt/primitives/cline.h"
165 
166 #include "./rt/comb.h"
167 
168 #include "./rt/misc.h"
169 
170 #include "./rt/prep.h"
171 
172 #include "./rt/vlist.h"
173 
174 #include "./rt/htbl.h"
175 
176 #include "./rt/dspline.h"
177 
178 #include "./rt/db_attr.h"
179 
180 #include "./rt/binunif.h"
181 
182 #include "./rt/conv.h"
183 
184 #include "./rt/version.h"
185 
186 
187 __END_DECLS
188 
189 #endif /* RAYTRACE_H */
190 /** @} */
191 /*
192  * Local Variables:
193  * mode: C
194  * tab-width: 8
195  * indent-tabs-mode: t
196  * c-file-style: "stroustrup"
197  * End:
198  * ex: shiftwidth=4 tabstop=8
199  */
Header file for the BRL-CAD Numerical Computation Library, LIBBN.
In memory format for non-geometry objects in BRL-CAD databases.
Header file for the BRL-CAD common definitions.
Definition of the BRL-CAD "v5" database format used for new ".g" files.