BRL-CAD

#include <functab.h>

Collaboration diagram for rt_functab:
[legend]

Data Fields

uint32_t magic
 
char ft_name [17]
 
char ft_label [9]
 
int ft_use_rpp
 
int(* ft_prep )(struct soltab *stp, struct rt_db_internal *ip, struct rt_i *rtip)
 
int(* ft_shot )(struct soltab *stp, struct xray *rp, struct application *ap, struct seg *seghead)
 
void(* ft_print )(const struct soltab *stp)
 
void(* ft_norm )(struct hit *hitp, struct soltab *stp, struct xray *rp)
 
int(* ft_piece_shot )(struct rt_piecestate *psp, struct rt_piecelist *plp, double dist, struct xray *ray, struct application *ap, struct seg *seghead)
 
void(* ft_piece_hitsegs )(struct rt_piecestate *psp, struct seg *seghead, struct application *ap)
 
void(* ft_uv )(struct application *ap, struct soltab *stp, struct hit *hitp, struct uvcoord *uvp)
 
void(* ft_curve )(struct curvature *cvp, struct hit *hitp, struct soltab *stp)
 
int(* ft_classify )(const struct soltab *, const vect_t, const vect_t, const struct bn_tol *)
 
void(* ft_free )(struct soltab *)
 
int(* ft_plot )(struct bu_list *, struct rt_db_internal *, const struct bg_tess_tol *, const struct bn_tol *, const struct bview *)
 
int(* ft_adaptive_plot )(struct bu_list *, struct rt_db_internal *, const struct bn_tol *, const struct bview *, fastf_t)
 
void(* ft_vshot )(struct soltab *[], struct xray *[], struct seg *, int, struct application *)
 
int(* ft_tessellate )(struct nmgregion **, struct model *, struct rt_db_internal *, const struct bg_tess_tol *, const struct bn_tol *)
 
int(* ft_tnurb )(struct nmgregion **, struct model *, struct rt_db_internal *, const struct bn_tol *)
 
void(* ft_brep )(ON_Brep **, struct rt_db_internal *, const struct bn_tol *)
 
int(* ft_import5 )(struct rt_db_internal *, const struct bu_external *, const mat_t, const struct db_i *, struct resource *)
 
int(* ft_export5 )(struct bu_external *, const struct rt_db_internal *, double, const struct db_i *, struct resource *)
 
int(* ft_import4 )(struct rt_db_internal *, const struct bu_external *, const mat_t, const struct db_i *, struct resource *)
 
int(* ft_export4 )(struct bu_external *, const struct rt_db_internal *, double, const struct db_i *, struct resource *)
 
void(* ft_ifree )(struct rt_db_internal *)
 
int(* ft_describe )(struct bu_vls *, const struct rt_db_internal *, int, double)
 
int(* ft_xform )(struct rt_db_internal *, const mat_t, struct rt_db_internal *, int, struct db_i *)
 
const struct bu_structparseft_parsetab
 rt_xxx_parse More...
 
size_t ft_internal_size
 sizeof(struct rt_xxx_internal) More...
 
uint32_t ft_internal_magic
 RT_XXX_INTERNAL_MAGIC. More...
 
int(* ft_get )(struct bu_vls *, const struct rt_db_internal *, const char *item)
 
int(* ft_adjust )(struct bu_vls *, struct rt_db_internal *, int, const char **)
 
int(* ft_form )(struct bu_vls *, const struct rt_functab *)
 
void(* ft_make )(const struct rt_functab *, struct rt_db_internal *)
 
int(* ft_params )(struct pc_pc_set *, const struct rt_db_internal *)
 
int(* ft_bbox )(struct rt_db_internal *, point_t *, point_t *, const struct bn_tol *)
 
void(* ft_volume )(fastf_t *, const struct rt_db_internal *)
 
void(* ft_surf_area )(fastf_t *, const struct rt_db_internal *)
 
void(* ft_centroid )(point_t *, const struct rt_db_internal *)
 
int(* ft_oriented_bbox )(struct rt_arb_internal *, struct rt_db_internal *, const fastf_t)
 
struct rt_selection_set *(* ft_find_selections )(const struct rt_db_internal *, const struct rt_selection_query *)
 
struct rt_selection *(* ft_evaluate_selection )(const struct rt_db_internal *, int op, const struct rt_selection *, const struct rt_selection *)
 
int(* ft_process_selection )(struct rt_db_internal *, struct db_i *, const struct rt_selection *, const struct rt_selection_operation *)
 
int(* ft_prep_serialize )(struct soltab *stp, const struct rt_db_internal *ip, struct bu_external *external, size_t *version)
 
void(* ft_labels )(struct bv_scene_obj *ps, const struct rt_db_internal *ip)
 

Detailed Description

This needs to be at the end of the raytrace.h header file, so that all the structure names are known. The "union record" and "struct nmgregion" pointers are problematic, so generic pointers are used when those header files have not yet been seen.

DEPRECATED: the size of this structure will likely change with new size for ft_label and new object callbacks.

Definition at line 70 of file functab.h.

Field Documentation

◆ magic

uint32_t magic

Definition at line 71 of file functab.h.

◆ ft_name

char ft_name[17]

Definition at line 72 of file functab.h.

◆ ft_label

char ft_label[9]

Definition at line 73 of file functab.h.

◆ ft_use_rpp

int ft_use_rpp

Definition at line 75 of file functab.h.

◆ ft_prep

int(* ft_prep) (struct soltab *stp, struct rt_db_internal *ip, struct rt_i *rtip)

Definition at line 77 of file functab.h.

◆ ft_shot

int(* ft_shot) (struct soltab *stp, struct xray *rp, struct application *ap, struct seg *seghead)

Definition at line 82 of file functab.h.

◆ ft_print

void(* ft_print) (const struct soltab *stp)

Definition at line 88 of file functab.h.

◆ ft_norm

void(* ft_norm) (struct hit *hitp, struct soltab *stp, struct xray *rp)

Definition at line 91 of file functab.h.

◆ ft_piece_shot

int(* ft_piece_shot) (struct rt_piecestate *psp, struct rt_piecelist *plp, double dist, struct xray *ray, struct application *ap, struct seg *seghead)

Definition at line 96 of file functab.h.

◆ ft_piece_hitsegs

void(* ft_piece_hitsegs) (struct rt_piecestate *psp, struct seg *seghead, struct application *ap)

Definition at line 104 of file functab.h.

◆ ft_uv

void(* ft_uv) (struct application *ap, struct soltab *stp, struct hit *hitp, struct uvcoord *uvp)

Definition at line 109 of file functab.h.

◆ ft_curve

void(* ft_curve) (struct curvature *cvp, struct hit *hitp, struct soltab *stp)

Definition at line 115 of file functab.h.

◆ ft_classify

int(* ft_classify) (const struct soltab *, const vect_t, const vect_t, const struct bn_tol *)

Definition at line 120 of file functab.h.

◆ ft_free

void(* ft_free) (struct soltab *)

Definition at line 123 of file functab.h.

◆ ft_plot

int(* ft_plot) (struct bu_list *, struct rt_db_internal *, const struct bg_tess_tol *, const struct bn_tol *, const struct bview *)

Definition at line 126 of file functab.h.

◆ ft_adaptive_plot

int(* ft_adaptive_plot) (struct bu_list *, struct rt_db_internal *, const struct bn_tol *, const struct bview *, fastf_t)

Definition at line 133 of file functab.h.

◆ ft_vshot

void(* ft_vshot) (struct soltab *[], struct xray *[], struct seg *, int, struct application *)

Definition at line 140 of file functab.h.

◆ ft_tessellate

int(* ft_tessellate) (struct nmgregion **, struct model *, struct rt_db_internal *, const struct bg_tess_tol *, const struct bn_tol *)

Definition at line 147 of file functab.h.

◆ ft_tnurb

int(* ft_tnurb) (struct nmgregion **, struct model *, struct rt_db_internal *, const struct bn_tol *)

Definition at line 153 of file functab.h.

◆ ft_brep

void(* ft_brep) (ON_Brep **, struct rt_db_internal *, const struct bn_tol *)

Definition at line 159 of file functab.h.

◆ ft_import5

int(* ft_import5) (struct rt_db_internal *, const struct bu_external *, const mat_t, const struct db_i *, struct resource *)

Definition at line 164 of file functab.h.

◆ ft_export5

int(* ft_export5) (struct bu_external *, const struct rt_db_internal *, double, const struct db_i *, struct resource *)

Definition at line 171 of file functab.h.

◆ ft_import4

int(* ft_import4) (struct rt_db_internal *, const struct bu_external *, const mat_t, const struct db_i *, struct resource *)

Definition at line 178 of file functab.h.

◆ ft_export4

int(* ft_export4) (struct bu_external *, const struct rt_db_internal *, double, const struct db_i *, struct resource *)

Definition at line 185 of file functab.h.

◆ ft_ifree

void(* ft_ifree) (struct rt_db_internal *)

Definition at line 192 of file functab.h.

◆ ft_describe

int(* ft_describe) (struct bu_vls *, const struct rt_db_internal *, int, double)

Definition at line 195 of file functab.h.

◆ ft_xform

int(* ft_xform) (struct rt_db_internal *, const mat_t, struct rt_db_internal *, int, struct db_i *)

Definition at line 201 of file functab.h.

◆ ft_parsetab

const struct bu_structparse* ft_parsetab

rt_xxx_parse

Definition at line 206 of file functab.h.

◆ ft_internal_size

size_t ft_internal_size

sizeof(struct rt_xxx_internal)

Definition at line 207 of file functab.h.

◆ ft_internal_magic

uint32_t ft_internal_magic

RT_XXX_INTERNAL_MAGIC.

Definition at line 208 of file functab.h.

◆ ft_get

int(* ft_get) (struct bu_vls *, const struct rt_db_internal *, const char *item)

Definition at line 210 of file functab.h.

◆ ft_adjust

int(* ft_adjust) (struct bu_vls *, struct rt_db_internal *, int, const char **)

Definition at line 213 of file functab.h.

◆ ft_form

int(* ft_form) (struct bu_vls *, const struct rt_functab *)

Definition at line 216 of file functab.h.

◆ ft_make

void(* ft_make) (const struct rt_functab *, struct rt_db_internal *)

Definition at line 219 of file functab.h.

◆ ft_params

int(* ft_params) (struct pc_pc_set *, const struct rt_db_internal *)

Definition at line 222 of file functab.h.

◆ ft_bbox

int(* ft_bbox) (struct rt_db_internal *, point_t *, point_t *, const struct bn_tol *)

Definition at line 226 of file functab.h.

◆ ft_volume

void(* ft_volume) (fastf_t *, const struct rt_db_internal *)

Definition at line 232 of file functab.h.

◆ ft_surf_area

void(* ft_surf_area) (fastf_t *, const struct rt_db_internal *)

Definition at line 235 of file functab.h.

◆ ft_centroid

void(* ft_centroid) (point_t *, const struct rt_db_internal *)

Definition at line 238 of file functab.h.

◆ ft_oriented_bbox

int(* ft_oriented_bbox) (struct rt_arb_internal *, struct rt_db_internal *, const fastf_t)

Definition at line 241 of file functab.h.

◆ ft_find_selections

struct rt_selection_set *(* ft_find_selections) (const struct rt_db_internal *, const struct rt_selection_query *)

get a list of the selections matching a query

Definition at line 241 of file functab.h.

◆ ft_evaluate_selection

struct rt_selection *(* ft_evaluate_selection) (const struct rt_db_internal *, int op, const struct rt_selection *, const struct rt_selection *)

evaluate a logical selection expression (e.g. a INTERSECT b, NOT a) to create a new selection

Definition at line 241 of file functab.h.

◆ ft_process_selection

int(* ft_process_selection) (struct rt_db_internal *, struct db_i *, const struct rt_selection *, const struct rt_selection_operation *)

apply an operation to a selected subset of a primitive

Definition at line 262 of file functab.h.

◆ ft_prep_serialize

int(* ft_prep_serialize) (struct soltab *stp, const struct rt_db_internal *ip, struct bu_external *external, size_t *version)

cache and uncache prep data for faster future lookup

Definition at line 269 of file functab.h.

◆ ft_labels

void(* ft_labels) (struct bv_scene_obj *ps, const struct rt_db_internal *ip)

generate struct bv_scene_obj labels for the primitive

Definition at line 273 of file functab.h.


The documentation for this struct was generated from the following file: