Tcl
[libbu (utility functions)]

Collaboration diagram for Tcl:


Files

file  bu_tcl.c
 Tcl interfaces to all the LIBBU Basic BRL-CAD Utility routines.
file  cmd.c
 Utility routines for handling commands.
file  cmdhist.c
 Routines for maintaining a command history.
file  cmdhist_obj.c
file  observer.c
 Routines for implementing the observer pattern.

Defines

#define BU_SP_SKIP_SEP(_cp)

Functions

void bu_observer_notify ()
void bu_observer_free (struct bu_observer *)
void bu_badmagic_tcl (Tcl_Interp *interp, const long *ptr, unsigned long magic, const char *str, const char *file, int line)
void bu_structparse_get_terse_form (Tcl_Interp *interp, const struct bu_structparse *sp)
int bu_structparse_argv (Tcl_Interp *interp, int argc, char **argv, const struct bu_structparse *desc, char *base)
int bu_tcl_mem_barriercheck (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_ck_malloc_ptr (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_malloc_len_roundup (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_prmem (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_printb (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_get_value_by_keyword (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_get_all_keyword_values (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_rgb_to_hsv (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_hsv_to_rgb (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_key_eq_to_key_val (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_shader_to_key_val (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_key_val_to_key_eq (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_shader_to_key_eq (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_brlcad_root (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_brlcad_data (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_brlcad_path (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_tcl_units_conversion (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
void bu_tcl_setup (Tcl_Interp *interp)
int Bu_Init (Tcl_Interp *interp)
int Cho_Init (Tcl_Interp *interp)
int bu_cmd (ClientData clientData, Tcl_Interp *interp, int argc, char **argv, struct bu_cmdtab *cmds, int cmd_index)
void bu_register_cmds (Tcl_Interp *interp, struct bu_cmdtab *cmds)
int bu_cmdhist_history (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
 Prints out the command history.
int bu_cmdhist_add (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
 Add a command to the history list.
int bu_cmdhist_prev (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_cmdhist_curr (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int bu_cmdhist_next (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
int cho_open_tcl (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
 Open a command history object.
int cho_hist (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
void bu_observer_notify (Tcl_Interp *interp, struct bu_observer *headp, char *this)

Variables

bu_cmdtab bu_observer_cmds []
bu_cmdtab bu_observer_cmds []

Define Documentation

#define BU_SP_SKIP_SEP _cp   ) 
 

Value:

{ while( *(_cp) && (*(_cp) == ' ' || *(_cp) == '\n' || \
                *(_cp) == '\t' || *(_cp) == '{' ) )  ++(_cp); }
NAME BU_SP_SKIP_SEP

Skip the separator(s) (i.e. whitespace and open-braces)

Parameters:
_cp - character pointer

Definition at line 199 of file bu_tcl.c.

Referenced by bu_structparse_argv().


Function Documentation

void bu_observer_notify  ) 
 

Referenced by dgo_notify(), vo_update(), wdb_adjust_cmd(), wdb_ocenter_cmd(), wdb_orotate_cmd(), wdb_oscale_cmd(), and wdb_otranslate_cmd().

void bu_observer_free struct bu_observer headp  ) 
 

Free observers.

Definition at line 201 of file observer.c.

References bu_free(), BU_LIST_DEQUEUE, BU_LIST_FIRST, BU_LIST_NOT_HEAD, BU_LIST_PNEXT, bu_vls_free(), bu_observer::cmd, bu_observer::l, and bu_observer::observer.

Referenced by dgo_deleteProc(), and wdb_deleteProc().

Here is the call graph for this function:

void bu_badmagic_tcl Tcl_Interp interp,
const long *  ptr,
unsigned long  magic,
const char *  str,
const char *  file,
int  line
 

b u _ b a d m a g i c _ t c l

Support routine for BU_CKMAG_TCL macro. As used by BU_CKMAG_TCL, this routine is not called unless there is trouble with the pointer. When called, an appropriate message is added to interp indicating the problem.

Parameters:
interp - tcl interpreter where result is stored
ptr - pointer to a data structure
magic - the correct/desired magic number
str - usually indicates the data structure name
file - file where this routine was called
line - line number in the above file
Returns:
void

Definition at line 106 of file bu_tcl.c.

References bu_identify_magic(), interp, and NULL.

Here is the call graph for this function:

void bu_structparse_get_terse_form Tcl_Interp interp,
const struct bu_structparse sp
 

bu_structparse_get_terse_form

Convert the "form" of a bu_structparse table into a TCL result string, with parameter-name data-type pairs:

V {f f f} A {f f f}

A different routine should build a more general 'form', along the lines of {V {f f f} default {help}} {A {f f f} default# {help}}

Parameters:
interp - tcl interpreter
sp - structparse table
Returns:
void

Definition at line 156 of file bu_tcl.c.

References bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_vls_trunc(), interp, NULL, bu_structparse::sp_count, bu_structparse::sp_fmt, and bu_structparse::sp_name.

Referenced by rt_parsetab_tclform().

Here is the call graph for this function:

int bu_structparse_argv Tcl_Interp interp,
int  argc,
char **  argv,
const struct bu_structparse desc,
char *  base
 

bu_structparse_argv

Support routine for db adjust and db put. Much like the bu_struct_parse routine which takes its input as a bu_vls. This routine, however, takes the arguments as lists, a more Tcl-friendly method. Also knows about the Tcl result string, so it can make more informative error messages.

Operates on argv[0] and argv[1], then on argv[2] and argv[3], ...

Parameters:
interp - tcl interpreter
argc - number of elements in argv
argv - contains the keyword-value pairs
desc - structure description
base - base addr of users struct
Return values:
TCL_OK if successful,
TCL_ERROR on failure

Definition at line 226 of file bu_tcl.c.

References bu_log(), BU_SP_SKIP_SEP, bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_init_if_uninit(), bu_vls_printf(), bu_vls_strcpy(), bu_vls_trunc(), interp, NULL, bu_structparse::sp_count, bu_structparse::sp_fmt, bu_structparse::sp_name, bu_structparse::sp_offset, and TCL_ERROR.

Referenced by rt_dsp_tcladjust(), and rt_parsetab_tcladjust().

Here is the call graph for this function:

int bu_tcl_mem_barriercheck ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_mem_barriercheck

A tcl wrapper for bu_mem_barriercheck.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 659 of file bu_tcl.c.

References bu_mem_barriercheck(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_ck_malloc_ptr ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_ck_malloc_ptr

A tcl wrapper for bu_ck_malloc_ptr.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 688 of file bu_tcl.c.

References bu_ck_malloc_ptr(), interp, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_malloc_len_roundup ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_malloc_len_roundup

A tcl wrapper for bu_malloc_len_roundup.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 718 of file bu_tcl.c.

References bu_malloc_len_roundup(), interp, NULL, Tcl_Interp::result, TCL_ERROR, TCL_OK, and val.

Here is the call graph for this function:

int bu_tcl_prmem ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_prmem

A tcl wrapper for bu_prmem. Prints map of memory currently in use, to stderr.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 753 of file bu_tcl.c.

References bu_prmem(), interp, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_printb ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_printb

A tcl wrapper for bu_vls_printb.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 783 of file bu_tcl.c.

References bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printb(), interp, NULL, TCL_ERROR, TCL_OK, and TCL_VOLATILE.

Here is the call graph for this function:

int bu_get_value_by_keyword ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_get_value_by_keyword

Given arguments of alternating keywords and values and a specific keyword ("Iwant"), return the value associated with that keyword.

example: bu_get_value_by_keyword Iwant az 35 elev 25 temp 9.6

If only one argument is given after the search keyword, it is interpreted as a list in the same format.

example: bu_get_value_by_keyword Iwant {az 35 elev 25 temp 9.6}

Search order is left-to-right, only first match is returned.

Sample use: bu_get_value_by_keyword V8 [concat type [.inmem get box.s]]

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 833 of file bu_tcl.c.

References bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_strcat(), bu_vls_trunc(), free(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_get_all_keyword_values ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Definition at line 958 of file bu_tcl.c.

References bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_strcat(), bu_vls_strcpy(), bu_vls_trunc(), free(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_rgb_to_hsv ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_rgb_to_hsv

A tcl wrapper for bu_rgb_to_hsv.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1054 of file bu_tcl.c.

References bu_rgb_to_hsv(), bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), interp, NULL, result, TCL_ERROR, TCL_OK, and V3ARGS.

Here is the call graph for this function:

int bu_tcl_hsv_to_rgb ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_hsv_to_rgb

A tcl wrapper for bu_hsv_to_rgb.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1112 of file bu_tcl.c.

References bu_hsv_to_rgb(), bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), interp, NULL, result, TCL_ERROR, TCL_OK, and V3ARGS.

Here is the call graph for this function:

int bu_tcl_key_eq_to_key_val ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_key_eq_to_key_val

Converts key=val to "key val" pairs.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1162 of file bu_tcl.c.

References bu_key_eq_to_key_val(), bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_trunc(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_shader_to_key_val ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_shader_to_key_val

Converts a shader string to a tcl list.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1212 of file bu_tcl.c.

References bu_shader_to_tcl_list(), bu_vls_addr(), bu_vls_free(), bu_vls_init(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_key_val_to_key_eq ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_key_val_to_key_eq

Converts "key value" pairs to key=value.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1253 of file bu_tcl.c.

References interp, and NULL.

int bu_tcl_shader_to_key_eq ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_shader_to_key_eq

Converts a shader tcl list into a shader string.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1290 of file bu_tcl.c.

References bu_shader_to_key_eq(), bu_vls_addr(), bu_vls_free(), bu_vls_init(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_brlcad_root ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_brlcad_root

A tcl wrapper for bu_brlcad_root.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1331 of file bu_tcl.c.

References bu_brlcad_root(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_brlcad_data ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_brlcad_data

A tcl wrapper for bu_brlcad_data.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1363 of file bu_tcl.c.

References bu_brlcad_data(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_brlcad_path ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_brlcad_path

A tcl wrapper for bu_brlcad_path.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1395 of file bu_tcl.c.

References bu_brlcad_path(), interp, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_tcl_units_conversion ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

bu_tcl_units_conversion

A tcl wrapper for bu_units_conversion.

Parameters:
clientData - associated data/state
interp - tcl interpreter in which this command was registered.
argc - number of elements in argv
argv - command name and arguments
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1427 of file bu_tcl.c.

References bu_units_conversion(), bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), interp, NULL, result, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

void bu_tcl_setup Tcl_Interp interp  ) 
 

bu_tcl_setup

Add all the supported Tcl interfaces to LIBBU routines to the list of commands known by the given interpreter.

Parameters:
interp - tcl interpreter in which this command was registered.
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1471 of file bu_tcl.c.

References bu_debug, BU_DEBUG_FORMAT, bu_register_cmds(), bu_version, Cho_Init(), interp, TCL_GLOBAL_ONLY, and TCL_LINK_INT.

Referenced by Bu_Init().

Here is the call graph for this function:

int Bu_Init Tcl_Interp interp  ) 
 

Bu_Init

Allows LIBBU to be dynamically loaded to a vanilla tclsh/wish with "load /usr/brlcad/lib/libbu.so"

Parameters:
interp - tcl interpreter in which this command was registered.
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 1502 of file bu_tcl.c.

References bu_bomb_hook_list, bu_hook_list_init(), bu_log_hook_list, bu_tcl_setup(), interp, and TCL_OK.

Here is the call graph for this function:

int Cho_Init Tcl_Interp interp  ) 
 

Definition at line 108 of file cmdhist_obj.c.

References BU_LIST_INIT, cho_open_tcl(), interp, bu_cmdhist_obj::l, NULL, TCL_OK, and void().

Referenced by bu_tcl_setup().

Here is the call graph for this function:

int bu_cmd ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv,
struct bu_cmdtab cmds,
int  cmd_index
 

bu_cmd

This function is intended to be used for parsing subcommands. If the command is found in the array of commands, the associated function is called. Otherwise, an error message is created and added to interp.

Parameters:
clientData - data/state associated with the command
interp - tcl interpreter wherein this command is registered (Note - the result of the command is also stored here)
argc - number of arguments in argv
argv - command to execute and its arguments
cmds - commands and related function pointers
cmd_index - indicates which argv element holds the subcommand
Returns:
TCL_OK if successful, otherwise, TCL_ERROR.

Definition at line 67 of file cmd.c.

References bu_cmdtab::ct_func, bu_cmdtab::ct_name, interp, and NULL.

void bu_register_cmds Tcl_Interp interp,
struct bu_cmdtab cmds
 

bu_register_cmds

This is a convenience routine for registering an array of commands with a Tcl interpreter. Note - this is not intended for use by commands with associated state (i.e. ClientData).

Parameters:
interp - Tcl interpreter wherein to register the commands
cmds - commands and related function pointers
Returns:
void

Definition at line 121 of file cmd.c.

References bu_cmdtab::ct_func, bu_cmdtab::ct_name, interp, and NULL.

int bu_cmdhist_history ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Prints out the command history.

USAGE: procname history [-delays] [-outfile filename]

Definition at line 113 of file cmdhist.c.

References BU_LIST_FOR, BU_LIST_NOT_HEAD, BU_LIST_PREV, bu_vls_addr(), bu_vls_free(), bu_vls_fwrite(), bu_vls_init(), bu_vls_printf(), bu_vls_trunc(), bu_vls_vlscat(), bu_cmdhist_obj::cho_head, fp, bu_cmdhist::h_command, bu_cmdhist::h_finish, bu_cmdhist::h_start, bu_cmdhist::h_status, interp, bu_cmdhist::l, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_cmdhist_add ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Add a command to the history list.

USAGE: procname add cmd

Definition at line 196 of file cmdhist.c.

References bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_vls_putc(), bu_vls_strcpy(), interp, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_cmdhist_prev ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Set the current command to the previous command.

USAGE: procname prev

Definition at line 232 of file cmdhist.c.

References BU_LIST_NOT_HEAD, BU_LIST_PLAST, bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_cmdhist_obj::cho_curr, bu_cmdhist_obj::cho_head, bu_cmdhist::h_command, interp, bu_cmdhist::l, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_cmdhist_curr ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Return the current command.

USAGE: procname curr

Definition at line 262 of file cmdhist.c.

References BU_LIST_NOT_HEAD, bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_cmdhist_obj::cho_curr, bu_cmdhist_obj::cho_head, bu_cmdhist::h_command, interp, bu_cmdhist::l, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int bu_cmdhist_next ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Set the current command to the next command.

USAGE: procname next

Definition at line 289 of file cmdhist.c.

References BU_LIST_IS_HEAD, BU_LIST_PNEXT, bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_cmdhist_obj::cho_curr, bu_cmdhist_obj::cho_head, bu_cmdhist::h_command, interp, bu_cmdhist::l, NULL, TCL_ERROR, and TCL_OK.

Here is the call graph for this function:

int cho_open_tcl ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Open a command history object.

USAGE: ch_open name

Definition at line 219 of file cmdhist_obj.c.

References BU_LIST_FOR, bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_cmdhist_obj::cho_name, CMDHIST_OBJ_NULL, interp, bu_cmdhist_obj::l, NULL, TCL_ERROR, TCL_OK, and void().

Here is the call graph for this function:

int cho_hist ClientData  clientData,
Tcl_Interp interp,
int  argc,
char **  argv
 

Definition at line 74 of file cmdhist_obj.c.

References bu_cmd(), and interp.

Here is the call graph for this function:

void bu_observer_notify Tcl_Interp interp,
struct bu_observer headp,
char *  this
 

Notify observers.

Definition at line 176 of file observer.c.

References BU_LIST_FOR, bu_vls_addr(), bu_vls_free(), bu_vls_init(), bu_vls_printf(), bu_vls_strcpy(), bu_vls_strlen(), bu_vls_trunc(), bu_observer::cmd, interp, bu_observer::l, and bu_observer::observer.

Here is the call graph for this function:


Variable Documentation

struct bu_cmdtab bu_observer_cmds[]
 

Definition at line 53 of file observer.c.

Referenced by dgo_observer_cmd(), vo_observer_cmd(), and wdb_observer_cmd().

struct bu_cmdtab bu_observer_cmds[]
 

Initial value:

 {
        {"attach",      bu_observer_attach_tcl},
        {"detach",      bu_observer_detach_tcl},
        {"show",        bu_observer_show_tcl},
        {(char *)0,     (int (*)())0}
}

Definition at line 53 of file observer.c.

Referenced by dgo_observer_cmd(), vo_observer_cmd(), and wdb_observer_cmd().


Generated on Mon Sep 18 01:25:21 2006 for BRL-CAD by  doxygen 1.4.6