62 if (sscanf(dbip_string,
"%p", (
void **)dbipp) != 1) {
100 for (i =
BU_PTBL_LEN(selections) - 1; i >= 0; --i) {
125 bu_free(obj_selections,
"ged selections entry");
184 struct solid *freesolid;
215 BU_GET(freesolid,
struct solid);
326 struct mater *save_materp = MATER_NULL;
328 if (filename == NULL)
355 if (sscanf(filename,
"%p", (
void **)&dbip) != 1) {
403 bu_log(
"wdb_open %s target type not recognized", dbtype);
432 bu_log(
"_ged_open_dbip: %s is not readable", filename);
442 bu_log(
"_ged_open_dbip: failed to create %s\n", filename);
471 int currdisplayDepth)
487 for (i = 0; i < pathpos; i++) {
488 if (indentSize < 0) {
495 for (j = 0; j < indentSize; j++) {
538 int max_attr_name_len = 0;
543 for (i = 0, avpp = avs.
avp; i < avs.
count; i++, avpp++) {
544 int len = (int)strlen(avpp->
name);
545 if (len > max_attr_name_len) {
546 max_attr_name_len = len;
549 for (i = 0, avpp = avs.
avp; i < avs.
count; i++, avpp++) {
552 max_attr_name_len, max_attr_name_len,
586 if (node_count > 0) {
587 rt_tree_array = (
struct rt_tree_array *)
bu_calloc(node_count,
588 sizeof(
struct rt_tree_array),
"tree list");
596 rt_tree_array = NULL;
599 for (i = 0; i < actual_count; i++) {
602 switch (rt_tree_array[i].
tl_op) {
620 for (j = 0; j < pathpos+1; j++)
626 if (currdisplayDepth < displayDepth) {
627 _ged_print_node(gedp, nextdp, pathpos+1, indentSize, op, flags, displayDepth, currdisplayDepth+1);
632 if (rt_tree_array)
bu_free((
char *)rt_tree_array,
"printnode: rt_tree_array");
void bu_vls_init(struct bu_vls *vp)
char * d_namep
pointer to name string
void bu_log(const char *,...) _BU_ATTR_PRINTF12
int rt_db_get_internal(struct rt_db_internal *ip, const struct directory *dp, const struct db_i *dbip, const mat_t mat, struct resource *resp)
#define GED_DRAWABLE_NULL
#define RT_DBNHASH
hash table is an array of linked lists with this many array pointer elements (Memory use for 32-bit: ...
int dbi_uses
PRIVATE: # of uses of this struct.
unsigned char * bu_get_hash_value(const struct bu_hash_entry *hsh_entry)
struct bview_other_state gv_view_scale
void bu_avs_init_empty(struct bu_attribute_value_set *avp)
size_t db_tree_nleaves(const union tree *tp)
void bu_hash_tbl_free(struct bu_hash_tbl *hsh_tbl)
void bu_ptbl_init(struct bu_ptbl *b, size_t len, const char *str)
struct bview_axes_state gv_model_axes
struct db_i * _ged_open_dbip(const char *filename, int existing_only)
Open/Create the database and build the in memory directory.
struct directory * db_lookup(const struct db_i *, const char *name, int noisy)
void * ged_refresh_clientdata
client data passed to refresh handler
struct ged_run_rt gd_headRunRt
head of forked rt processes
int bu_ptbl_rm(struct bu_ptbl *b, const long *p)
char ** dbi_filepath
search path for aux file opens (convenience var)
struct bview_other_state gv_prim_labels
struct fbserv_obj * ged_fbsp
Header file for the BRL-CAD common definitions.
int bu_file_readable(const char *path)
#define RT_DIR_REGION
region
void ged_init(struct ged *gedp)
void ged_view_update(struct bview *gvp)
struct bu_list * gd_headDisplay
head of display list
void ged_close(struct ged *gedp)
struct bview_interactive_rect_state gv_rect
struct bu_ptbl selections
holds struct rt_selection
struct bu_mapped_file * dbi_mf
PRIVATE: Only in read-only mode.
void qray_init(struct ged_drawable *gdp)
struct ged * ged_open(const char *dbtype, const char *filename, int existing_only)
int ged_decode_dbip(const char *dbip_string, struct db_i **dbipp)
#define DB_OPEN_READWRITE
struct rt_tree_array * db_flatten_tree(struct rt_tree_array *rt_tree_array, union tree *tp, int op, int avail, struct resource *resp)
void bu_vls_free(struct bu_vls *vp)
#define OP_SUBTRACT
Binary: L subtract R.
void db_non_union_push(union tree *tp, struct resource *resp)
#define OP_INTERSECT
Binary: L intersect R.
struct resource rt_uniresource
default. Defined in librt/globals.c
char * dbi_title
title from IDENT rec
struct bu_attribute_value_pair * avp
#define BU_ALLOC(_ptr, _type)
void * bu_calloc(size_t nelem, size_t elsize, const char *str)
fastf_t gv_isize
1.0 / size
struct bview_grid_state gv_grid
struct bview_other_state gv_center_dot
off_t dbi_eof
PRIVATE: End+1 pos after db_scan()
void(* free_selection)(struct rt_selection *)
#define BU_PTBL_GET(ptbl, i)
#define RT_WDB_TYPE_DB_DISK
fastf_t gv_size
2.0 * scale
void db_free_tree(union tree *tp, struct resource *resp)
#define BU_GET(_ptr, _type)
void bu_sort(void *array, size_t nummemb, size_t sizememb, int(*compare)(const void *, const void *, void *), void *context)
char gv_rotate_about
indicates what point rotations are about
struct bu_ptbl dbi_clients
PRIVATE: List of rtip's using this db_i.
void ged_free(struct ged *gedp)
void rt_new_material_head(struct mater *newmat)
char * tl_name
Name of this leaf (bu_strdup'ed)
#define BU_LIST_PNEXT(structure, p)
void ged_view_init(struct bview *gvp)
struct bu_hash_tbl * ged_selections
object name -> struct rt_object_selections
#define UNUSED(parameter)
struct bview_adc_state gv_adc
#define BU_PUT(_ptr, _type)
struct bu_list * gd_headVDraw
head of vdraw list
FILE * dbi_fp
PRIVATE: object hash table.
struct bu_vls * ged_result_str
double dbi_base2local
unit conversion factors
#define BU_FREE(_ptr, _type)
void ged_results_free(struct ged_results *results)
struct ged_drawable * ged_gdp
void(* ged_refresh_handler)(void *)
function for handling refresh requests
#define BU_PTBL_LEN(ptbl)
struct solid * gd_freeSolids
ptr to head of free solid list
void bu_ptbl_free(struct bu_ptbl *b)
struct mater * rt_material_head(void)
int gd_uplotOutputMode
output mode for unix plots
void qray_free(struct ged_drawable *gdp)
int dbi_read_only
!0 => read only file
#define GED_INIT(_gedp, _wdbp)
struct db_i * db_create(const char *name, int version)
void wdb_close(struct rt_wdb *wdbp)
int bu_strcmp(const char *string1, const char *string2)
void _ged_print_node(struct ged *gedp, struct directory *dp, size_t pathpos, int indentSize, char prefix, unsigned flags, int displayDepth, int currdisplayDepth)
struct tree::tree_db_leaf tr_l
#define BU_LIST_INIT(_hp)
#define RT_DIR_COMB
combination
struct directory * dbi_Head[RT_DBNHASH]
#define RT_WDB_TYPE_DB_INMEM_APPEND_ONLY
char gv_coord
coordinate system
union tree * tree
Leading to tree_db_leaf leaves.
void bu_vls_printf(struct bu_vls *vls, const char *fmt,...) _BU_ATTR_PRINTF23
struct bview_axes_state gv_view_axes
struct db_i * db_open(const char *name, const char *mode)
vect_t gv_eye_pos
eye position
HIDDEN int _ged_cmp_attr(const void *p1, const void *p2, void *arg)
char * ged_output_script
script for use by the outputHandler
void(* ged_output_handler)(struct ged *, char *)
function for handling output
struct bu_hash_tbl * sets
int dbi_version
PRIVATE: use db_version()
#define BU_ASSERT_SIZE_T(_lhs, _relation, _rhs)
#define RT_WDB_TYPE_DB_INMEM
void bu_free(void *ptr, const char *str)
int _ged_results_init(struct ged_results *results)
double dbi_local2base
local2mm
int db_dirbuild(struct db_i *dbip)
#define RT_WDB_TYPE_DB_DISK_APPEND_ONLY
#define BU_LIST_DEQUEUE(cur)
struct bu_hash_tbl * bu_hash_tbl_create(unsigned long tbl_size)
int db5_get_attributes(const struct db_i *dbip, struct bu_attribute_value_set *avs, const struct directory *dp)
char * dbi_filename
file name
#define OP_UNION
Binary: L union R.
int db_ck_v4gift_tree(const union tree *tp)
struct rt_wdb * wdb_fopen(const char *filename)
int bu_file_exists(const char *path, int *fd)
#define BU_LIST_NEXT(structure, hp)
struct rt_wdb * wdb_dbopen(struct db_i *dbip, int mode)
#define BU_LIST_NOT_HEAD(p, hp)
struct bu_hash_entry * bu_hash_tbl_traverse(struct bu_hash_tbl *hsh_tbl, int(*func)(struct bu_hash_entry *, void *), void *func_arg)
struct bview_other_state gv_view_params
void rt_db_free_internal(struct rt_db_internal *ip)
uint32_t dbi_magic
magic number
struct ged_results * ged_results
#define BU_STR_EQUAL(s1, s2)