BRL-CAD
Loading...
Searching...
No Matches
Collaboration diagram for Definitions:

Files

file  defines.h
 

Data Structures

class  BSelectState
 
class  BViewState
 
class  DbiState
 
struct  ged_subprocess
 
struct  ged
 
struct  ged_cmd
 
struct  ged_plugin
 
struct  ged_cmd_process
 
struct  ged_process_plugin
 

Macros

#define GED_DBISTATE_DB_CHANGE   0x01
 
#define GED_DBISTATE_VIEW_CHANGE   0x02
 
#define GED_NULL   ((struct ged *)0)
 
#define GED_DISPLAY_LIST_NULL   ((struct display_list *)0)
 
#define GED_DRAWABLE_NULL   ((struct ged_drawable *)0)
 
#define GED_VIEW_NULL   ((struct bview *)0)
 
#define GED_RESULT_NULL   ((void *)0)
 
#define GED_HELP   0x0002
 
#define GED_MORE   0x0004
 
#define GED_QUIET   0x0008
 
#define GED_UNKNOWN   0x0010
 
#define GED_EXIT   0x0020
 
#define GED_OVERRIDE   0x0040
 
#define GED_CK_MAGIC(_p)   BU_CKMAG(_p->i, GED_MAGIC, "ged")
 
#define GED_FUNC_PTR_NULL   ((ged_func_ptr)0)
 
#define GED_SEM_WORKER   ANALYZE_SEM_LAST
 
#define GED_SEM_STATS   GED_SEM_WORKER+1
 
#define GED_SEM_LIST   GED_SEM_STATS+1
 
#define GED_SEM_LAST   GED_SEM_LIST+1
 
#define GED_INITIALIZED(_gedp)   ((_gedp)->dbip != NULL)
 
#define GED_LOCAL2BASE(_gedp)   ((_gedp)->dbip->dbi_local2base)
 
#define GED_BASE2LOCAL(_gedp)   ((_gedp)->dbip->dbi_base2local)
 
#define RT_VDRW_PREFIX   "_VDRW"
 
#define RT_VDRW_PREFIX_LEN   6
 
#define RT_VDRW_MAXNAME   31
 
#define RT_VDRW_DEF_COLOR   0xffff00
 
#define GED_CHECK_ARGC_GT_0(_gedp, _argc, _flags)
 

Typedefs

typedef int(* ged_func_ptr) (struct ged *, int, const char *[])
 
typedef void(* ged_io_func_t) (void *, int)
 
typedef void(* ged_refresh_func_t) (void *)
 
typedef void(* ged_create_vlist_solid_func_t) (void *, struct bv_scene_obj *)
 
typedef void(* ged_create_vlist_display_list_func_t) (void *, struct display_list *)
 
typedef void(* ged_destroy_vlist_func_t) (void *, unsigned int, int)
 
typedef int(* ged_process_ptr) (int, const char *[])
 

Functions

struct gedged_create (void)
 
void ged_destroy (struct ged *)
 
void ged_init (struct ged *gedp)
 
void ged_free (struct ged *gedp)
 
int ged_clbk_set (struct ged *gedp, const char *cmd, int mode, bu_clbk_t f, void *d)
 
int ged_clbk_get (bu_clbk_t *f, void **d, struct ged *gedp, const char *cmd, int mode)
 
int ged_clbk_exec (struct bu_vls *log, struct ged *gedp, int limit, bu_clbk_t f, int ac, const char **av, void *u1, void *u2)
 
void ged_dm_ctx_set (struct ged *gedp, const char *dm_type, void *ctx)
 
voidged_dm_ctx_get (struct ged *gedp, const char *dm_type)
 
size_t ged_results_count (struct ged_results *results)
 
const charged_results_get (struct ged_results *results, size_t index)
 
void ged_results_clear (struct ged_results *results)
 
void ged_results_free (struct ged_results *results)
 
struct gedged_open (const char *dbtype, const char *filename, int existing_only)
 
void ged_close (struct ged *gedp)
 
const charged_init_msgs (void)
 

Variables

todo in the above struct
 

Detailed Description

Experimental

Geometry EDiting Library structures for reflecting the state of the database and views.

These are used to provide a fast, explicit expression in memory of the database and view states, to allow applications to quickly display hierarchical information and manipulate view data.

We want this to be visible to C++ APIs like libqtcad, so they can reflect the state of the .g hierarchy in their own structures without us or them having to make copies of the data. Pattern this on how we handle ON_Brep

Geometry EDiting Library specific definitions.

Macro Definition Documentation

◆ GED_DBISTATE_DB_CHANGE

#define GED_DBISTATE_DB_CHANGE   0x01

Definition at line 274 of file dbi.h.

◆ GED_DBISTATE_VIEW_CHANGE

#define GED_DBISTATE_VIEW_CHANGE   0x02

Definition at line 275 of file dbi.h.

◆ GED_NULL

#define GED_NULL   ((struct ged *)0)

Definition at line 56 of file defines.h.

◆ GED_DISPLAY_LIST_NULL

#define GED_DISPLAY_LIST_NULL   ((struct display_list *)0)

Definition at line 57 of file defines.h.

◆ GED_DRAWABLE_NULL

#define GED_DRAWABLE_NULL   ((struct ged_drawable *)0)

Definition at line 58 of file defines.h.

◆ GED_VIEW_NULL

#define GED_VIEW_NULL   ((struct bview *)0)

Definition at line 59 of file defines.h.

◆ GED_RESULT_NULL

#define GED_RESULT_NULL   ((void *)0)

Definition at line 61 of file defines.h.

◆ GED_HELP

#define GED_HELP   0x0002

invalid specification, result contains usage

Definition at line 65 of file defines.h.

◆ GED_MORE

#define GED_MORE   0x0004

incomplete specification, can specify again interactively

Definition at line 66 of file defines.h.

◆ GED_QUIET

#define GED_QUIET   0x0008

don't set or modify the result string

Definition at line 67 of file defines.h.

◆ GED_UNKNOWN

#define GED_UNKNOWN   0x0010

argv[0] was not a known command

Definition at line 68 of file defines.h.

◆ GED_EXIT

#define GED_EXIT   0x0020

command is requesting a clean application shutdown

Definition at line 69 of file defines.h.

◆ GED_OVERRIDE

#define GED_OVERRIDE   0x0040

used to indicate settings have been overridden

Definition at line 70 of file defines.h.

◆ GED_CK_MAGIC

#define GED_CK_MAGIC (   _p)    BU_CKMAG(_p->i, GED_MAGIC, "ged")

Definition at line 73 of file defines.h.

◆ GED_FUNC_PTR_NULL

#define GED_FUNC_PTR_NULL   ((ged_func_ptr)0)

Definition at line 80 of file defines.h.

◆ GED_SEM_WORKER

#define GED_SEM_WORKER   ANALYZE_SEM_LAST

Definition of global parallel-processing semaphores.

Definition at line 94 of file defines.h.

◆ GED_SEM_STATS

#define GED_SEM_STATS   GED_SEM_WORKER+1

Definition at line 95 of file defines.h.

◆ GED_SEM_LIST

#define GED_SEM_LIST   GED_SEM_STATS+1

Definition at line 96 of file defines.h.

◆ GED_SEM_LAST

#define GED_SEM_LAST   GED_SEM_LIST+1

Definition at line 97 of file defines.h.

◆ GED_INITIALIZED

#define GED_INITIALIZED (   _gedp)    ((_gedp)->dbip != NULL)

Definition at line 99 of file defines.h.

◆ GED_LOCAL2BASE

#define GED_LOCAL2BASE (   _gedp)    ((_gedp)->dbip->dbi_local2base)

Definition at line 100 of file defines.h.

◆ GED_BASE2LOCAL

#define GED_BASE2LOCAL (   _gedp)    ((_gedp)->dbip->dbi_base2local)

Definition at line 101 of file defines.h.

◆ RT_VDRW_PREFIX

#define RT_VDRW_PREFIX   "_VDRW"

Definition at line 106 of file defines.h.

◆ RT_VDRW_PREFIX_LEN

#define RT_VDRW_PREFIX_LEN   6

Definition at line 107 of file defines.h.

◆ RT_VDRW_MAXNAME

#define RT_VDRW_MAXNAME   31

Definition at line 108 of file defines.h.

◆ RT_VDRW_DEF_COLOR

#define RT_VDRW_DEF_COLOR   0xffff00

Definition at line 109 of file defines.h.

◆ GED_CHECK_ARGC_GT_0

#define GED_CHECK_ARGC_GT_0 (   _gedp,
  _argc,
  _flags 
)
Value:
if ((_argc) < 1) { \
bu_vls_trunc((_gedp)->ged_result_str, 0); \
bu_vls_printf((_gedp)->ged_result_str, "Command name not provided on (%s:%d).", __FILE__, __LINE__); \
} \
}
Definition dvec.h:74
#define GED_QUIET
Definition defines.h:67

make sure there is a command name given

@

Todo:
  • where should this go?

Definition at line 399 of file defines.h.

Typedef Documentation

◆ ged_func_ptr

typedef int(* ged_func_ptr) (struct ged *, int, const char *[])

Definition at line 79 of file defines.h.

◆ ged_io_func_t

typedef void(* ged_io_func_t) (void *, int)

Definition at line 83 of file defines.h.

◆ ged_refresh_func_t

typedef void(* ged_refresh_func_t) (void *)

Definition at line 84 of file defines.h.

◆ ged_create_vlist_solid_func_t

typedef void(* ged_create_vlist_solid_func_t) (void *, struct bv_scene_obj *)

Definition at line 85 of file defines.h.

◆ ged_create_vlist_display_list_func_t

typedef void(* ged_create_vlist_display_list_func_t) (void *, struct display_list *)

Definition at line 86 of file defines.h.

◆ ged_destroy_vlist_func_t

typedef void(* ged_destroy_vlist_func_t) (void *, unsigned int, int)

Definition at line 87 of file defines.h.

◆ ged_process_ptr

typedef int(* ged_process_ptr) (int, const char *[])

Definition at line 432 of file defines.h.

Function Documentation

◆ ged_create()

struct ged * ged_create ( void  )

◆ ged_destroy()

void ged_destroy ( struct ged )

◆ ged_init()

void ged_init ( struct ged gedp)
extern

◆ ged_free()

void ged_free ( struct ged gedp)
extern

◆ ged_clbk_set()

int ged_clbk_set ( struct ged gedp,
const char cmd,
int  mode,
bu_clbk_t  f,
void d 
)
extern

◆ ged_clbk_get()

int ged_clbk_get ( bu_clbk_t f,
void **  d,
struct ged gedp,
const char cmd,
int  mode 
)
extern

◆ ged_clbk_exec()

int ged_clbk_exec ( struct bu_vls log,
struct ged gedp,
int  limit,
bu_clbk_t  f,
int  ac,
const char **  av,
void u1,
void u2 
)
extern

◆ ged_dm_ctx_set()

void ged_dm_ctx_set ( struct ged gedp,
const char dm_type,
void ctx 
)
extern

◆ ged_dm_ctx_get()

void * ged_dm_ctx_get ( struct ged gedp,
const char dm_type 
)
extern

◆ ged_results_count()

size_t ged_results_count ( struct ged_results *  results)
extern

◆ ged_results_get()

const char * ged_results_get ( struct ged_results *  results,
size_t  index 
)
extern

◆ ged_results_clear()

void ged_results_clear ( struct ged_results *  results)
extern

◆ ged_results_free()

void ged_results_free ( struct ged_results *  results)
extern

◆ ged_open()

struct ged * ged_open ( const char dbtype,
const char filename,
int  existing_only 
)
extern

◆ ged_close()

void ged_close ( struct ged gedp)
extern

◆ ged_init_msgs()

const char * ged_init_msgs ( void  )

Variable Documentation

◆ struct

todo in the above struct

Definition at line 145 of file defines.h.