ns2 Network Simulator      C++ Class Hierarchy of version ns-snapshot-20040722
|  Home |  Source Code |  Manual |  FAQ |  Mailing List Archive |  Search |  |  Download | 


Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

otcl/otcl.c File Reference

#include <stdlib.h>
#include <string.h>
#include <tclInt.h>
#include <otcl.h>

Compounds

struct  OTclClass
struct  OTclClasses
struct  OTclObject

Defines

#define TclIsVarUndefined(varPtr)   ((varPtr)->flags == VAR_UNDEFINED)
#define ObjVarTablePtr(OBJ)   (&(OBJ)->variables.varTable)
#define compat_Tcl_AddObjErrorInfo(a, b, c)   Tcl_AddErrorInfo(a,b)
#define OTCLSMALLARGS   8
#define MAXTCLPROC   4096

Typedefs

typedef OTclObject OTclObject
typedef OTclClass OTclClass
typedef OTclClasses OTclClasses

Enumerations

enum  colors { WHITE, GRAY, BLACK }

Functions

int OTclErrMsg (Tcl_Interp *in, char *msg, Tcl_FreeProc *type)
int OTclErrArgCnt (Tcl_Interp *in, char *cmdname, char *arglist)
int OTclErrBadVal (Tcl_Interp *in, char *expected, char *value)
int OTclErrType (Tcl_Interp *in, char *nm, char *wt)
int TopoSort (OTclClass *cl, OTclClass *base, OTclClasses *(*next)(OTclClass *))
void RC (OTclClasses *sl)
OTclClasses * Super (OTclClass *cl)
OTclClasses * ComputePrecedence (OTclClass *cl)
OTclClasses * Sub (OTclClass *cl)
OTclClasses * ComputeDependents (OTclClass *cl)
void FlushPrecedences (OTclClass *cl)
void AddInstance (OTclObject *obj, OTclClass *cl)
int RemoveInstance (OTclObject *obj, OTclClass *cl)
void AS (OTclClass *cl, OTclClass *s, OTclClasses **sl)
void AddSuper (OTclClass *cl, OTclClass *super)
int RS (OTclClass *cl, OTclClass *s, OTclClasses **sl)
int RemoveSuper (OTclClass *cl, OTclClass *super)
OTclClass * InObject (Tcl_Interp *in)
OTclClass * InClass (Tcl_Interp *in)
int IsType (OTclObject *obj, OTclClass *type)
int LookupMethod (Tcl_HashTable *methods, char *nm, Tcl_CmdProc **pr, ClientData *cd, Tcl_CmdDeleteProc **dp)
OTclClass * SearchCMethod (OTclClasses *pl, char *nm, Tcl_CmdProc **pr, ClientData *cd, Tcl_CmdDeleteProc **dp)
int OTclDispatch (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
void AutoLoaderDP (ClientData cd)
int AutoLoader (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int MakeAuto (Tcl_CmdInfo *proc, char *loader)
void AddMethod (Tcl_HashTable *methods, char *nm, Tcl_CmdProc *pr, ClientData cd, Tcl_CmdDeleteProc *dp, ClientData dd)
int RemoveMethod (Tcl_HashTable *methods, char *nm, ClientData cd)
int MakeProc (Tcl_CmdInfo *proc, Tcl_Interp *in, int argc, char *argv[])
void ListKeys (Tcl_Interp *in, Tcl_HashTable *table, char *pattern)
void ListInstanceKeys (Tcl_Interp *in, Tcl_HashTable *table, char *pattern)
void ListProcKeys (Tcl_Interp *in, Tcl_HashTable *table, char *pattern)
Proc * FindProc (Tcl_HashTable *table, char *name)
int ListProcArgs (Tcl_Interp *in, Tcl_HashTable *table, char *name)
int ListProcDefault (Tcl_Interp *in, Tcl_HashTable *table, char *name, char *arg, char *var)
int ListProcBody (Tcl_Interp *in, Tcl_HashTable *table, char *name)
void PrimitiveOInit (void *mem, Tcl_Interp *in, char *name, OTclClass *cl)
void PrimitiveODestroyNoFree (ClientData cd)
void PrimitiveODestroy (ClientData cd)
OTclObject * PrimitiveOCreate (Tcl_Interp *in, char *name, OTclClass *cl)
void PrimitiveCInit (void *mem, Tcl_Interp *in, char *name, OTclClass *class)
void PrimitiveCDestroy (ClientData cd)
OTclClass * PrimitiveCCreate (Tcl_Interp *in, char *name, OTclClass *class)
int OTclOAllocMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclOInitMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclODestroyMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclOClassMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclCInfoMethod (ClientData, Tcl_Interp *, int, char *[])
int OTclOInfoMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclOProcMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclONextMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclOSetMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclOUnsetMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclOInstVarOne (OTclObject *obj, Tcl_Interp *in, char *frameName, char *varName, char *localName, int flags)
int OTclOInstVarMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclCAllocMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclCCreateMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclCSuperClassMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
int OTclCInstProcMethod (ClientData cd, Tcl_Interp *in, int argc, char *argv[])
OTclObject * OTclAsObject (Tcl_Interp *in, ClientData cd)
OTclClass * OTclAsClass (Tcl_Interp *in, ClientData cd)
OTclObject * OTclGetObject (Tcl_Interp *in, char *name)
OTclClass * OTclGetClass (Tcl_Interp *in, char *name)
OTclObject * OTclCreateObject (Tcl_Interp *in, char *name, OTclClass *cl)
OTclClass * OTclCreateClass (Tcl_Interp *in, char *name, OTclClass *cl)
int OTclDeleteObject (Tcl_Interp *in, OTclObject *obj)
int OTclDeleteClass (Tcl_Interp *in, OTclClass *cl)
void OTclAddPMethod (OTclObject *obj, char *nm, Tcl_CmdProc *proc, ClientData cd, Tcl_CmdDeleteProc *dp)
void OTclAddIMethod (OTclClass *cl, char *nm, Tcl_CmdProc *proc, ClientData cd, Tcl_CmdDeleteProc *dp)
int OTclRemovePMethod (OTclObject *obj, char *nm)
int OTclRemoveIMethod (OTclClass *cl, char *nm)
int OTclNextMethod (OTclObject *obj, Tcl_Interp *in, int argc, char *argv[])
char * OTclSetInstVar (OTclObject *obj, Tcl_Interp *in, char *name, char *value, int flgs)
char * OTclGetInstVar (OTclObject *obj, Tcl_Interp *in, char *name, int flgs)
int OTclUnsetInstVar (OTclObject *obj, Tcl_Interp *in, char *name, int flgs)
void OTclSetObjectData (OTclObject *obj, OTclClass *cl, ClientData data)
int OTclGetObjectData (OTclObject *obj, OTclClass *cl, ClientData *data)
int OTclUnsetObjectData (OTclObject *obj, OTclClass *cl)
int Otcl_Init (Tcl_Interp *in)

Variables

Tcl_HashTable * theObjects = 0
Tcl_HashTable * theClasses = 0
Tcl_CmdProc * ProcInterpId = 0

Define Documentation

#define compat_Tcl_AddObjErrorInfo (  a,
b,
c    )     Tcl_AddErrorInfo(a,b)
 

#define MAXTCLPROC   4096
 

#define ObjVarTablePtr (  OBJ    )     (&(OBJ)->variables.varTable)
 

#define OTCLSMALLARGS   8
 

#define TclIsVarUndefined (  varPtr    )     ((varPtr)->flags == VAR_UNDEFINED)
 


Typedef Documentation

typedef struct OTclClass OTclClass
 

typedef struct OTclClasses OTclClasses
 

typedef struct OTclObject OTclObject
 


Enumeration Type Documentation

enum colors
 

Enumeration values:
WHITE 
GRAY 
BLACK 


Function Documentation

void AddInstance (  OTclObject *    obj,
OTclClass *    cl
)  [static]
 

void AddMethod (  Tcl_HashTable *    methods,
char *    nm,
Tcl_CmdProc *    pr,
ClientData    cd,
Tcl_CmdDeleteProc *    dp,
ClientData    dd
)  [static]
 

void AddSuper (  OTclClass *    cl,
OTclClass *    super
)  [static]
 

void AS (  OTclClass *    cl,
OTclClass *    s,
OTclClasses **    sl
)  [static]
 

int AutoLoader (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

void AutoLoaderDP (  ClientData    cd )  [static]
 

OTclClasses* ComputeDependents (  OTclClass *    cl )  [static]
 

OTclClasses* ComputePrecedence (  OTclClass *    cl )  [static]
 

Proc* FindProc (  Tcl_HashTable *    table,
char *    name
)  [static]
 

void FlushPrecedences (  OTclClass *    cl )  [static]
 

OTclClass* InClass (  Tcl_Interp *    in )  [static]
 

OTclClass* InObject (  Tcl_Interp *    in )  [static]
 

int IsType (  OTclObject *    obj,
OTclClass *    type
)  [static]
 

void ListInstanceKeys (  Tcl_Interp *    in,
Tcl_HashTable *    table,
char *    pattern
)  [static]
 

void ListKeys (  Tcl_Interp *    in,
Tcl_HashTable *    table,
char *    pattern
)  [static]
 

int ListProcArgs (  Tcl_Interp *    in,
Tcl_HashTable *    table,
char *    name
)  [static]
 

int ListProcBody (  Tcl_Interp *    in,
Tcl_HashTable *    table,
char *    name
)  [static]
 

int ListProcDefault (  Tcl_Interp *    in,
Tcl_HashTable *    table,
char *    name,
char *    arg,
char *    var
)  [static]
 

void ListProcKeys (  Tcl_Interp *    in,
Tcl_HashTable *    table,
char *    pattern
)  [static]
 

int LookupMethod (  Tcl_HashTable *    methods,
char *    nm,
Tcl_CmdProc **    pr,
ClientData *    cd,
Tcl_CmdDeleteProc **    dp
)  [static]
 

int MakeAuto (  Tcl_CmdInfo *    proc,
char *    loader
) 
 

int MakeProc (  Tcl_CmdInfo *    proc,
Tcl_Interp *    in,
int    argc,
char *    argv[]
) 
 

int Otcl_Init (  Tcl_Interp *    in ) 
 

void OTclAddIMethod (  OTclClass *    cl,
char *    nm,
Tcl_CmdProc *    proc,
ClientData    cd,
Tcl_CmdDeleteProc *    dp
) 
 

void OTclAddPMethod (  OTclObject *    obj,
char *    nm,
Tcl_CmdProc *    proc,
ClientData    cd,
Tcl_CmdDeleteProc *    dp
) 
 

OTclClass* OTclAsClass (  Tcl_Interp *    in,
ClientData    cd
) 
 

OTclObject* OTclAsObject (  Tcl_Interp *    in,
ClientData    cd
) 
 

int OTclCAllocMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclCCreateMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclCInfoMethod (  ClientData   ,
Tcl_Interp *   ,
int   ,
char *   []
)  [static]
 

int OTclCInstProcMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

OTclClass* OTclCreateClass (  Tcl_Interp *    in,
char *    name,
OTclClass *    cl
) 
 

OTclObject* OTclCreateObject (  Tcl_Interp *    in,
char *    name,
OTclClass *    cl
) 
 

int OTclCSuperClassMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclDeleteClass (  Tcl_Interp *    in,
OTclClass *    cl
) 
 

int OTclDeleteObject (  Tcl_Interp *    in,
OTclObject *    obj
) 
 

int OTclDispatch (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclErrArgCnt (  Tcl_Interp *    in,
char *    cmdname,
char *    arglist
)  [static]
 

int OTclErrBadVal (  Tcl_Interp *    in,
char *    expected,
char *    value
)  [static]
 

int OTclErrMsg (  Tcl_Interp *    in,
char *    msg,
Tcl_FreeProc *    type
)  [static]
 

int OTclErrType (  Tcl_Interp *    in,
char *    nm,
char *    wt
)  [static]
 

OTclClass* OTclGetClass (  Tcl_Interp *    in,
char *    name
) 
 

char* OTclGetInstVar (  OTclObject *    obj,
Tcl_Interp *    in,
char *    name,
int    flgs
) 
 

OTclObject* OTclGetObject (  Tcl_Interp *    in,
char *    name
) 
 

int OTclGetObjectData (  OTclObject *    obj,
OTclClass *    cl,
ClientData *    data
) 
 

int OTclNextMethod (  OTclObject *    obj,
Tcl_Interp *    in,
int    argc,
char *    argv[]
) 
 

int OTclOAllocMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOClassMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclODestroyMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOInfoMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOInitMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOInstVarMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOInstVarOne (  OTclObject *    obj,
Tcl_Interp *    in,
char *    frameName,
char *    varName,
char *    localName,
int    flags
) 
 

int OTclONextMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOProcMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOSetMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclOUnsetMethod (  ClientData    cd,
Tcl_Interp *    in,
int    argc,
char *    argv[]
)  [static]
 

int OTclRemoveIMethod (  OTclClass *    cl,
char *    nm
) 
 

int OTclRemovePMethod (  OTclObject *    obj,
char *    nm
) 
 

char* OTclSetInstVar (  OTclObject *    obj,
Tcl_Interp *    in,
char *    name,
char *    value,
int    flgs
) 
 

void OTclSetObjectData (  OTclObject *    obj,
OTclClass *    cl,
ClientData    data
) 
 

int OTclUnsetInstVar (  OTclObject *    obj,
Tcl_Interp *    in,
char *    name,
int    flgs
) 
 

int OTclUnsetObjectData (  OTclObject *    obj,
OTclClass *    cl
) 
 

OTclClass* PrimitiveCCreate (  Tcl_Interp *    in,
char *    name,
OTclClass *    class
)  [static]
 

void PrimitiveCDestroy (  ClientData    cd )  [static]
 

void PrimitiveCInit (  void *    mem,
Tcl_Interp *    in,
char *    name,
OTclClass *    class
)  [static]
 

OTclObject* PrimitiveOCreate (  Tcl_Interp *    in,
char *    name,
OTclClass *    cl
)  [static]
 

void PrimitiveODestroy (  ClientData    cd )  [static]
 

void PrimitiveODestroyNoFree (  ClientData    cd )  [static]
 

void PrimitiveOInit (  void *    mem,
Tcl_Interp *    in,
char *    name,
OTclClass *    cl
)  [static]
 

void RC (  OTclClasses *    sl )  [static]
 

int RemoveInstance (  OTclObject *    obj,
OTclClass *    cl
)  [static]
 

int RemoveMethod (  Tcl_HashTable *    methods,
char *    nm,
ClientData    cd
)  [static]
 

int RemoveSuper (  OTclClass *    cl,
OTclClass *    super
)  [static]
 

int RS (  OTclClass *    cl,
OTclClass *    s,
OTclClasses **    sl
)  [static]
 

OTclClass* SearchCMethod (  OTclClasses *    pl,
char *    nm,
Tcl_CmdProc **    pr,
ClientData *    cd,
Tcl_CmdDeleteProc **    dp
)  [static]
 

OTclClasses* Sub (  OTclClass *    cl )  [static]
 

OTclClasses* Super (  OTclClass *    cl )  [static]
 

int TopoSort (  OTclClass *    cl,
OTclClass *    base,
OTclClasses *(*    next)(OTclClass *)
)  [static]
 


Variable Documentation

Tcl_CmdProc* ProcInterpId = 0 [static]
 

Tcl_HashTable* theClasses = 0 [static]
 

Tcl_HashTable* theObjects = 0 [static]
 


This document is generated by doxygen.