27#ifndef RT_RT_INSTANCE_H
28#define RT_RT_INSTANCE_H
140#define RTI_NULL ((struct rt_i *)0)
142#define RT_CHECK_RTI(_p) BU_CKMAG(_p, RTI_MAGIC, "struct rt_i")
143#define RT_CK_RTI(_p) RT_CHECK_RTI(_p)
152#define RT_VISIT_ALL_SOLTABS_START(_s, _rti) { \
154 for (_i = 0; _i < RT_DBNHASH; _i++) { \
155 struct bu_list *_head = rt_solidhead_ptr((_rti), _i); \
156 for (BU_LIST_FOR(_s, soltab, _head)) {
158#define RT_VISIT_ALL_SOLTABS_END } } }
296 const struct soltab *stp);
341 const struct rt_i *rtip,
Header file for the BRL-CAD common definitions.
void rt_pr_tree_val(const union tree *tp, const struct partition *partp, int pr_name, int lvl)
void rt_ck(struct rt_i *rtip)
DEPRECATED void rt_free_rti(struct rt_i *rtip)
int rt_gettrees_and_attrs(struct rt_i *rtip, const char **attrs, int argc, const char **argv, int ncpus)
void(* rti_clbk_t)(struct rt_i *rtip, struct db_tree_state *tsp, struct region *r)
void rt_clean_resource(struct rt_i *rtip, struct resource *resp)
struct region * rt_deleted_region_get(struct rt_i *rtip, size_t n)
void rt_i_init(struct rt_i *rtip, struct db_i *dbip)
int(* rt_region_callback_t)(struct region *regp, void *udata)
void rt_mark_region_deleted(struct rt_i *rtip, struct region *regp)
void rt_pr_partition_vls(struct bu_vls *v, const struct rt_i *rtip, const struct partition *pp)
void rt_iterate_regions(struct rt_i *rtip, rt_region_callback_t callback, void *udata)
void rt_clean_resource_basic(struct rt_i *rtip, struct resource *resp)
int rt_plot_solid(FILE *fp, struct rt_i *rtip, const struct soltab *stp)
size_t rt_deleted_regions_cnt(struct rt_i *rtip)
DEPRECATED struct rt_i * rt_new_rti(struct db_i *dbip)
struct soltab * rt_find_solid(const struct rt_i *rtip, const char *name)
Find solid by leaf name.
void rt_regionfix(struct rt_i *rtip)
void rt_init_resource(struct resource *resp, int cpu_num, struct rt_i *rtip)
int rt_gettree(struct rt_i *rtip, const char *node)
void rt_pr_partition(const struct rt_i *rtip, const struct partition *pp)
void rt_i_destroy(struct rt_i *rtip)
int rt_gettrees(struct rt_i *rtip, int argc, const char **argv, int ncpus)
void rt_clean(struct rt_i *rtip)
int rt_del_regtree(struct rt_i *rtip, struct region *delregp)
struct bu_list * rt_solidhead_ptr(struct rt_i *rtip, int idx)
void rt_fr_cut(struct rt_i *rtip, union cutter *cutp)
void rt_prep_parallel(struct rt_i *rtip, int ncpu)
void rt_pr_partitions(const struct rt_i *rtip, const struct partition *phead, const char *title)
void rt_cut_it(struct rt_i *rtip, int ncpu)
struct rt_i * rt_i_create(struct db_i *dbip)
void rt_i_clear(struct rt_i *rtip)
DEPRECATED void rt_clean_resource_complete(struct rt_i *rtip, struct resource *resp)
void rt_prep(struct rt_i *rtip)
double fastf_t
fastest 64-bit (or larger) floating point type
fastf_t point_t[ELEMENTS_PER_POINT]
3-tuple point
size_t nmiss
solid ft_shot() returned a miss
size_t nmiss_tree
shots missed sub-tree RPP
size_t nsolids
total # of solids participating
size_t rti_nrays
# calls to rt_shootray()
size_t rti_cut_maxlen
max len RPP list in 1 cut bin
size_t rti_cut_maxdepth
max depth of cut tree
size_t rti_ncut_by_type[CUT_MAXIMUM+1]
number of cuts by type
size_t nmiss_solid
shots missed solid RPP
size_t rti_cut_totobj
# objs in all bins, total
size_t nempty_cells
number of empty spatial partition cells passed through
size_t ndup
duplicate shots at a given solid
size_t nshots
# of calls to ft_shot()
size_t nhits
solid ft_shot() returned a hit
size_t nmiss_model
rays missed model RPP
size_t nregions
total # of regions participating
double rti_radius
radius of model bounding sphere
struct bn_tol rti_tol
Math tolerances for this model.
uint32_t rti_magic
magic # for integrity check
point_t mdl_min
min corner of model bounding RPP
fastf_t rti_max_beam_radius
Max threat radius for FASTGEN cline solid.
struct bg_tess_tol rti_ttol
Tessellation tolerance defaults.
int needprep
needs rt_prep
int rti_dont_instance
1=Don't compress instances of solids into 1 while prepping
int rti_save_overlaps
1=fill in pt_overlap_reg, change boolweave behavior
struct rt_i_stats stats
geometry counts and ray-shooting counters
point_t rti_pmax
for plotting, max RPP
int rti_space_partition
space partitioning method
int rti_prismtrace
add support for pixel prism trace
int useair
1="air" regions are retained while prepping
struct bu_ptbl rti_resources
list of 'struct resource's encountered
point_t rti_pmin
for plotting, min RPP
int rti_hasty_prep
1=hasty prep, slower ray-trace
void * rti_udata
ptr for user data.
size_t rti_nlights
number of light sources
char * rti_region_fix_file
rt_regionfix() file or NULL
point_t mdl_max
max corner of model bounding RPP
struct bu_list HeadRegion
ptr of list of regions in model
struct db_i * rti_dbip
prt to Database instance struct
rti_clbk_t rti_gettrees_clbk
Optional user clbk function called during rt_gettrees_and_attrs.
fundamental vector, matrix, quaternion math macros