VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Macros | Typedefs | Enumerations | Functions | Variables

This file contains common methods for parsing mtl files. More...

Go to the source code of this file.

Classes

class  DtlObjPtr
 
class  DtlObj
 void* ptr (to imitate locatives). More...
 
union  DtlObj::vl
 
struct  DtlObj::vl::Fcn
 
struct  DtlObj::vl::frm
 

Macros

#define DtlObjDebug(s)   do { if (DtLispDebugOn) DtlInfo s; } while (0)
 
#define DtlError(string, obj)
 
#define DtlWarn(string, obj)
 
#define DtlInfo(string, obj)
 
#define DtcSet1Env   DtcSet
 
#define DtcREGISTER(var, env, params)   DtcRegister(#var, &var, env, params)
 
#define DtcDEFINE(type, var, dflt)   type var = dflt; DtcREGISTER(var)
 

Typedefs

typedef DtlObjPtr(* DtlFcn )(const DtlObjPtr &args, const DtlObjPtr &env)
 
typedef DtlFcn DtlCompiledCFcnWithEnv
 
typedef void * DtlPtrToNode
 

Enumerations

enum  DtlTagType {
  DtpNull, DtpSymbol, DtpFix, DtpFlonum,
  DtpList, DtpSpecialForm, DtpCompiledC, DtpString,
  DtpLocative, DtpProcedure, DtpFrame
}
 LCU pg. 173. More...
 

Functions

DT_DLL_MTL DtlObjPtr DtcLoadLispFile (char *filename, const DtlObjPtr &env, DtList *allParams, int complain=1)
 Load a LISP file or expression. More...
 
DT_DLL_MTL DtlObjPtr DtcLoadLispFile (const DtlObjPtr &pathlist, char *filename, const DtlObjPtr &env, DtList *allParams, int complain=1)
 
DT_DLL_MTL DtlObjPtr DtcLoadLispFileOrExpr (char *arg, const DtlObjPtr &env, DtList *allParams, int complain=1)
 
DT_DLL_MTL DtlObjPtr DtcLoadLispExpr (char *lispLine, const DtlObjPtr &env, DtList *allParams, int complain=1)
 
DT_DLL_MTL DtlObjPtr DtcHaltAndCatchFire (char *diagnostic)
 Error handling. Throws a DtException with a brief description. More...
 
DT_DLL_MTL DtlObjPtr DtcInternCompiledC (char *name, DtlCompiledCFcnWithEnv fcn, const DtlObjPtr &env)
 This function installs your lambda-arg-style function with the given name so it can be called from the reader. More...
 
DT_DLL_MTL DtlObjPtr DtcPtrToNode (DtlTagType t, DtlPtrToNode ptr)
 
DT_DLL_MTL DtlObjPtr DtcInternPtr (char *name, const DtlObjPtr &value, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtcInternSpecialForm (char *name, DtlCompiledCFcnWithEnv fcn, const DtlObjPtr &env)
 This function installs LISP "special forms" such as setq and quote. More...
 
DT_DLL_MTL int DtcSetIfBoundp (char *lisp_var_name, int *cvar, const DtlObjPtr &env)
 To make setting C++ variables easier (works by side-effect). More...
 
DT_DLL_MTL int DtcSetIfBoundp (char *lisp_var_name, double *cvar, const DtlObjPtr &env)
 
DT_DLL_MTL int DtcSetIfBoundp (char *lisp_var_name, char **cvar, const DtlObjPtr &env)
 
DT_DLL_MTL void IncObjRefCnt (DtlObj *obj)
 Memory management (these functions use DtlObj*'s, but you shouldn't!) More...
 
DT_DLL_MTL void DecObjRefCnt (DtlObj *obj)
 
DT_DLL_MTL int EnvLocalProcRefcnt (DtlObj *env)
 
DT_DLL_MTL int EnvLocalProcRefcnt (const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtcCBooleanToLispBoolean (int i)
 Standard LISP functions with C-style args For manipulating DtlObj's from C programs. More...
 
DT_DLL_MTL DtlObjPtr DtcCaddddddr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCadddddr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCaddddr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCadddr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCaddr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCadr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCar (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCdr (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcCons (const DtlObjPtr &car, const DtlObjPtr &cdr)
 
DT_DLL_MTL DtlObjPtr DtcAppend (const DtlObjPtr &, const DtlObjPtr &)
 
DT_DLL_MTL DtlObjPtr DtcAssoc (const DtlObjPtr &thing, const DtlObjPtr &alist)
 
DT_DLL_MTL DtlObjPtr DtcAssv (const DtlObjPtr &thing, const DtlObjPtr &alist)
 
DT_DLL_MTL DtlObjPtr DtcAssq (const DtlObjPtr &thing, const DtlObjPtr &alist)
 
DT_DLL_MTL DtlObjPtr DtcReverse (const DtlObjPtr &)
 
DT_DLL_MTL DtlObjPtr DtcEval (const DtlObjPtr &, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtcIntern (char *name, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtcMakeSymbol (char *pname)
 
DT_DLL_MTL DtlObjPtr DtcPrint (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcRead (DtlInputStream *f, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtcSet (const DtlObjPtr &c, const DtlObjPtr &value, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtcSymeval (const DtlObjPtr &c, const DtlObjPtr &env)
 
DT_DLL_MTL int DtcBoundp (const DtlObjPtr &sym, const DtlObjPtr &env)
 
DT_DLL_MTL int DtcEq (const DtlObjPtr &a, const DtlObjPtr &b)
 
DT_DLL_MTL int DtcEqual (const DtlObjPtr &c1, const DtlObjPtr &c2)
 
DT_DLL_MTL int DtcEqualSign (const DtlObjPtr &c1, const DtlObjPtr &c2)
 
DT_DLL_MTL int DtcLength (const DtlObjPtr &c)
 
DT_DLL_MTL int DtcListp (const DtlObjPtr &c)
 
DT_DLL_MTL int DtcNull (const DtlObjPtr &c)
 
DT_DLL_MTL int DtcNumberp (const DtlObjPtr &c)
 
DT_DLL_MTL int DtcStringEqual (const DtlObjPtr &s1, const DtlObjPtr &s2)
 
DT_DLL_MTL int DtcStringp (const DtlObjPtr &c)
 
DT_DLL_MTL int DtcLocativep (const DtlObjPtr &c)
 
DT_DLL_MTL DtlObjPtr DtcErrPrint (const DtlObjPtr &c)
 Our own equivalent of DtcPrint for stderr. More...
 
DT_DLL_MTL DtlObjPtr DtlAbort (const DtlObjPtr &args, const DtlObjPtr &env)
 Standard LISP subrs with lambda-style args for calling from the evaluator. More...
 
DT_DLL_MTL DtlObjPtr DtlAbs (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlAnd (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlAppend (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlAssoc (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlAssq (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlAssv (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlCond (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlCos (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlDescribe (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlDivide (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlEnvDump (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlEq (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlEqual (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlEqualSign (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlEval (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlExit (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlFormat (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlFrameBindings (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlFrameBound (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlFrameParent (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlGetenv (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlGreater (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlGreaterEqual (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlIf (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLCar (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLCdr (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLCons (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLambda (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLet (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLength (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLess (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLessEqual (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlList (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlListp (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLoad (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLogIOr (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlMem (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlMinus (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlMultiply (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlNewFrame (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlNotOrNull (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlNumberp (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlOr (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlPlus (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlPopen (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlPrin1 (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlPutenv (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlReverse (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlQuote (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlSequence (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlSetq (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlSetqBoundVariable (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlSin (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlStringAppend (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlStringEqual (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlStringp (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlTheFrame (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlLocativep (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlSystem (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlTerpri (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlPrintRegistered (const DtlObjPtr &, const DtlObjPtr &env)
 Some extensions. More...
 
DT_DLL_MTL DtlObjPtr DtlPathCross (const DtlObjPtr &, const DtlObjPtr &env)
 
DT_DLL_MTL DtlObjPtr DtlStringToNumber (const DtlObjPtr &args, const DtlObjPtr &env)
 Conversion functions. More...
 
DT_DLL_MTL DtlObjPtr DtlNumberToString (const DtlObjPtr &args, const DtlObjPtr &env)
 
DT_DLL_MTL void DtlAddLoadPath (const char *path)
 When a load command is used in an mtl file only full paths and paths relative to the working directory will be accepted. More...
 
DT_DLL_MTL void DtlClearLoadPaths ()
 
DT_DLL_MTL void DtcGlobalEnvInit (DtlObjPtr &env)
 Defines global symbols, special functions, and standard lisp function in the environment. More...
 
DT_DLL_MTL int DtcRegister (const char *name, float *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, double *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, int *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, unsigned long *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, char **addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, DtString *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, long *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, short *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL int DtcRegister (const char *name, unsigned short *addr, const DtlObjPtr &env, DtList *allParams)
 
DT_DLL_MTL void DtcLispToC (DtList *allParams)
 Evaluates every registered variable and copies the value to the registered C address. More...
 
DT_DLL_MTL void DtcCToLisp (DtList *allParams)
 Sets the value all registered variables in lisp from the registered C address. More...
 
DT_DLL_MTL void DtcEmptyParamList (DtList *allParams)
 Remove any DtcParams that have been added to allParams. More...
 

Variables

class DT_DLL_MTL DtlObj
 
class DT_DLL_MTL DtlObjPtr
 
class DT_DLL_MTL DtlHashTable
 
class DT_DLL_MTL DtcParam
 
DT_DLL_MTL char * DtMtlReadEscapeChar
 set this value to something other than 0 to allow escape characters More...
 

Detailed Description

This file contains common methods for parsing mtl files.

MTL is a SCHEME/LISP implementation

Macro Definition Documentation

#define DtcDEFINE (   type,
  var,
  dflt 
)    type var = dflt; DtcREGISTER(var)
#define DtcREGISTER (   var,
  env,
  params 
)    DtcRegister(#var, &var, env, params)
#define DtcSet1Env   DtcSet
#define DtlError (   string,
  obj 
)
Value:
do { if (DtNotifyLevel >= DtNlFatal) \
fprintf(stderr, "Lisp Error: %s", string), DtcErrPrint(obj); } while (0)
DT_DLL_MTL DtlObjPtr DtcErrPrint(const DtlObjPtr &c)
Our own equivalent of DtcPrint for stderr.
Definition: vlPrint.h:41
int DtNotifyLevel
DtNotifyLevel is used to control the level of diagnostics output by VR-Link.
#define DtlInfo (   string,
  obj 
)
Value:
do { if (DtNotifyLevel >= DtNlInfo) \
printf(string), DtcPrint(obj); } while (0)
int DtNotifyLevel
DtNotifyLevel is used to control the level of diagnostics output by VR-Link.
DT_DLL_MTL DtlObjPtr DtcPrint(const DtlObjPtr &c)
Definition: vlPrint.h:43
#define DtlObjDebug (   s)    do { if (DtLispDebugOn) DtlInfo s; } while (0)
#define DtlWarn (   string,
  obj 
)
Value:
do { if (DtNotifyLevel >= DtNlWarn) \
fprintf(stderr, "Lisp Warning: %s", string), DtcErrPrint(obj); } while (0)
DT_DLL_MTL DtlObjPtr DtcErrPrint(const DtlObjPtr &c)
Our own equivalent of DtcPrint for stderr.
int DtNotifyLevel
DtNotifyLevel is used to control the level of diagnostics output by VR-Link.
Definition: vlPrint.h:42

Typedef Documentation

typedef DtlObjPtr(* DtlFcn)(const DtlObjPtr &args, const DtlObjPtr &env)
typedef void* DtlPtrToNode

Enumeration Type Documentation

enum DtlTagType

LCU pg. 173.

Enumerator
DtpNull 
DtpSymbol 
DtpFix 
DtpFlonum 
DtpList 
DtpSpecialForm 
DtpCompiledC 
DtpString 
DtpLocative 
DtpProcedure 
DtpFrame 

Function Documentation

DT_DLL_MTL void DecObjRefCnt ( DtlObj obj)

Referenced by DtlObjPtr::~DtlObjPtr().

DT_DLL_MTL DtlObjPtr DtcAppend ( const DtlObjPtr ,
const DtlObjPtr  
)
DT_DLL_MTL DtlObjPtr DtcAssoc ( const DtlObjPtr thing,
const DtlObjPtr alist 
)
DT_DLL_MTL DtlObjPtr DtcAssq ( const DtlObjPtr thing,
const DtlObjPtr alist 
)
DT_DLL_MTL DtlObjPtr DtcAssv ( const DtlObjPtr thing,
const DtlObjPtr alist 
)
DT_DLL_MTL int DtcBoundp ( const DtlObjPtr sym,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtcCaddddddr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCadddddr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCaddddr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCadddr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCaddr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCadr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCar ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCBooleanToLispBoolean ( int  i)

Standard LISP functions with C-style args For manipulating DtlObj's from C programs.

DT_DLL_MTL DtlObjPtr DtcCdr ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcCons ( const DtlObjPtr car,
const DtlObjPtr cdr 
)
DT_DLL_MTL void DtcCToLisp ( DtList allParams)

Sets the value all registered variables in lisp from the registered C address.

allParams is a list of DtcParams*'s representing all of the registered parameters.

DT_DLL_MTL void DtcEmptyParamList ( DtList allParams)

Remove any DtcParams that have been added to allParams.

DT_DLL_MTL int DtcEq ( const DtlObjPtr a,
const DtlObjPtr b 
)
DT_DLL_MTL int DtcEqual ( const DtlObjPtr c1,
const DtlObjPtr c2 
)
DT_DLL_MTL int DtcEqualSign ( const DtlObjPtr c1,
const DtlObjPtr c2 
)
DT_DLL_MTL DtlObjPtr DtcErrPrint ( const DtlObjPtr c)

Our own equivalent of DtcPrint for stderr.

DT_DLL_MTL DtlObjPtr DtcEval ( const DtlObjPtr ,
const DtlObjPtr env 
)
DT_DLL_MTL void DtcGlobalEnvInit ( DtlObjPtr env)

Defines global symbols, special functions, and standard lisp function in the environment.

To create a global environment: DtlObjPtr env(DtpFrame); DtcGlobalEnvInit(env);

DT_DLL_MTL DtlObjPtr DtcHaltAndCatchFire ( char *  diagnostic)

Error handling. Throws a DtException with a brief description.

DT_DLL_MTL DtlObjPtr DtcIntern ( char *  name,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtcInternCompiledC ( char *  name,
DtlCompiledCFcnWithEnv  fcn,
const DtlObjPtr env 
)

This function installs your lambda-arg-style function with the given name so it can be called from the reader.

DT_DLL_MTL DtlObjPtr DtcInternPtr ( char *  name,
const DtlObjPtr value,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtcInternSpecialForm ( char *  name,
DtlCompiledCFcnWithEnv  fcn,
const DtlObjPtr env 
)

This function installs LISP "special forms" such as setq and quote.

The arguments aren't evaluated before the DtlCompiledCFcn fcn is called. Kids, don't try this at home!

DT_DLL_MTL int DtcLength ( const DtlObjPtr c)
DT_DLL_MTL void DtcLispToC ( DtList allParams)

Evaluates every registered variable and copies the value to the registered C address.

allParams is a list of DtcParams*'s representing all of the registered parameters.

DT_DLL_MTL int DtcListp ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcLoadLispExpr ( char *  lispLine,
const DtlObjPtr env,
DtList allParams,
int  complain = 1 
)
DT_DLL_MTL DtlObjPtr DtcLoadLispFile ( char *  filename,
const DtlObjPtr env,
DtList allParams,
int  complain = 1 
)

Load a LISP file or expression.

env is a lisp environment. allParams is a list of all C variables that have been registered with the lisp system.

DT_DLL_MTL DtlObjPtr DtcLoadLispFile ( const DtlObjPtr pathlist,
char *  filename,
const DtlObjPtr env,
DtList allParams,
int  complain = 1 
)
DT_DLL_MTL DtlObjPtr DtcLoadLispFileOrExpr ( char *  arg,
const DtlObjPtr env,
DtList allParams,
int  complain = 1 
)
DT_DLL_MTL int DtcLocativep ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcMakeSymbol ( char *  pname)
DT_DLL_MTL int DtcNull ( const DtlObjPtr c)
DT_DLL_MTL int DtcNumberp ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcPrint ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcPtrToNode ( DtlTagType  t,
DtlPtrToNode  ptr 
)
DT_DLL_MTL DtlObjPtr DtcRead ( DtlInputStream f,
const DtlObjPtr env 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
float addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
double addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
int addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
unsigned long *  addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
char **  addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
DtString addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
long *  addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
short *  addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL int DtcRegister ( const char *  name,
unsigned short *  addr,
const DtlObjPtr env,
DtList allParams 
)
DT_DLL_MTL DtlObjPtr DtcReverse ( const DtlObjPtr )
DT_DLL_MTL DtlObjPtr DtcSet ( const DtlObjPtr c,
const DtlObjPtr value,
const DtlObjPtr env 
)
DT_DLL_MTL int DtcSetIfBoundp ( char *  lisp_var_name,
int cvar,
const DtlObjPtr env 
)

To make setting C++ variables easier (works by side-effect).

Returns 1 if cvar is set (if symbol is bound and is of right data type). Returns 0 otherwise.

DT_DLL_MTL int DtcSetIfBoundp ( char *  lisp_var_name,
double cvar,
const DtlObjPtr env 
)
DT_DLL_MTL int DtcSetIfBoundp ( char *  lisp_var_name,
char **  cvar,
const DtlObjPtr env 
)
DT_DLL_MTL int DtcStringEqual ( const DtlObjPtr s1,
const DtlObjPtr s2 
)
DT_DLL_MTL int DtcStringp ( const DtlObjPtr c)
DT_DLL_MTL DtlObjPtr DtcSymeval ( const DtlObjPtr c,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlAbort ( const DtlObjPtr args,
const DtlObjPtr env 
)

Standard LISP subrs with lambda-style args for calling from the evaluator.

(You shouldn't need to call these.)

DT_DLL_MTL DtlObjPtr DtlAbs ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL void DtlAddLoadPath ( const char *  path)

When a load command is used in an mtl file only full paths and paths relative to the working directory will be accepted.

DtlAddLoadPath will add an additional path that will be checked if it can not be found. Can be called more than once to add multiple paths. Paths will be checked in the order they are added. DtlClearLoadPaths will clear any added paths.

DT_DLL_MTL DtlObjPtr DtlAnd ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlAppend ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlAssoc ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlAssq ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlAssv ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL void DtlClearLoadPaths ( )
DT_DLL_MTL DtlObjPtr DtlCond ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlCos ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlDescribe ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlDivide ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlEnvDump ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlEq ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlEqual ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlEqualSign ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlEval ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlExit ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlFormat ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlFrameBindings ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlFrameBound ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlFrameParent ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlGetenv ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlGreater ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlGreaterEqual ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlIf ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLambda ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLCar ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLCdr ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLCons ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLength ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLess ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLessEqual ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLet ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlList ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlListp ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLoad ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLocativep ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlLogIOr ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlMem ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlMinus ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlMultiply ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlNewFrame ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlNotOrNull ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlNumberp ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlNumberToString ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlOr ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlPathCross ( const DtlObjPtr ,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlPlus ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlPopen ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlPrin1 ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlPrintRegistered ( const DtlObjPtr ,
const DtlObjPtr env 
)

Some extensions.

DT_DLL_MTL DtlObjPtr DtlPutenv ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlQuote ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlReverse ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlSequence ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlSetq ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlSetqBoundVariable ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlSin ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlStringAppend ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlStringEqual ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlStringp ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlStringToNumber ( const DtlObjPtr args,
const DtlObjPtr env 
)

Conversion functions.

DT_DLL_MTL DtlObjPtr DtlSystem ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlTerpri ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL DtlObjPtr DtlTheFrame ( const DtlObjPtr args,
const DtlObjPtr env 
)
DT_DLL_MTL int EnvLocalProcRefcnt ( DtlObj env)
DT_DLL_MTL int EnvLocalProcRefcnt ( const DtlObjPtr env)
DT_DLL_MTL void IncObjRefCnt ( DtlObj obj)

Memory management (these functions use DtlObj*'s, but you shouldn't!)

Variable Documentation

class DT_DLL_MTL DtcParam
DT_DLL_MTL char* DtMtlReadEscapeChar

set this value to something other than 0 to allow escape characters


Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)