VR-Link API Documentation for HLA 1516
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
mtl
lispEnv.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
6
7
#ifndef lispEnv_H_
8
#define lispEnv_H_
9
13
14
#include "
mtl.h
"
15
#include "
mtlenv.h
"
16
#include <
vlutil/vlString.h
>
17
19
#include <
cmdLine/cmdLine.h
>
20
#include <
cmdLine/cmdSwitchArg.h
>
21
#include <
cmdLine/cmdUnlabeledValueArg.h
>
22
#include <
cmdLine/cmdUnlabeledMultiArg.h
>
23
24
#include "
configVar.h
"
25
28
#if defined(_WIN32) && _MSC_VER==1200
29
#define registerCmdLineVar(x) \
30
registerVar(x.getName().c_str(), x.getInternalPtrValue())
31
#endif
32
33
#ifdef DtUSE_UTILITIES_NAMESPACE
34
namespace
DtUSE_UTILITIES_NAMESPACE
35
{
36
#endif
37
42
class
DT_DLL_MTL
DtMtlEnvironment
43
{
44
public
:
45
47
DtMtlEnvironment
();
48
50
virtual
~
DtMtlEnvironment
();
51
53
virtual
DtlObjPtr
lookup(
const
DtString
& name);
54
63
virtual
int
registerVar(
const
char
* name,
float
* addr);
64
virtual
int
registerVar(
const
char
* name,
double
* addr);
65
virtual
int
registerVar(
const
char
* name,
int
* addr);
66
virtual
int
registerVar(
const
char
* name,
unsigned
long
* addr);
67
virtual
int
registerVar(
const
char
* name,
char
** addr);
68
virtual
int
registerVar(
const
char
* name,
DtString
* addr);
69
virtual
int
registerVar(
const
char
* name,
long
* addr);
70
virtual
int
registerVar(
const
char
* name,
short
* addr);
71
virtual
int
registerVar(
const
char
* name,
unsigned
short
* addr);
72
#if DT_HAVE_64BIT_LONGS
73
virtual
int
registerVar(
const
char
* name,
unsigned
int
* addr);
74
#endif
75
76
#if defined(_WIN32) && _MSC_VER==1200
77
78
#else
79
80
template
<
class
T>
81
int
registerCmdLineVar(
DtCmdLine::ValueArg<T>
&arg);
82
83
template
<
class
T>
84
int
registerConfigVar(
DtConfigVariable<T>
& arg);
85
#endif
86
91
virtual
DtlObjPtr
loadLispFile(
char
* filename,
int
complain = 1);
92
virtual
DtlObjPtr
loadLispFile(
93
const
DtlObjPtr
& pathlist,
char
* filename,
int
complain = 1);
94
virtual
DtlObjPtr
loadLispFileOrExpr(
char
* arg,
int
complain = 1);
95
virtual
DtlObjPtr
loadLispExpr(
char
* lispLine,
int
complain = 1);
96
102
virtual
DtlObjPtr
setParameter(
103
const
DtString
& name,
const
DtlObjPtr
& value);
104
virtual
DtlObjPtr
setFunction(
const
DtString
& name,
DtlFcn
func);
105
109
virtual
DtlObjPtr
& env();
110
111
protected
:
112
114
DtMtlEnvironment
(
const
DtMtlEnvironment
& orig);
115
117
DtMtlEnvironment
& operator=(
const
DtMtlEnvironment
& orig);
118
120
virtual
DtlObjPtr
setSpecialForm(
const
DtString
& name,
DtlFcn
func);
121
124
void
initEnv();
125
126
protected
:
127
128
DtlObjPtr
myEnv
;
129
132
DtList
*
myParams
;
133
};
134
136
#define DtREGISTER(var) registerVar((char *)#var, &var)
137
138
inline
DtlObjPtr
&
DtMtlEnvironment::env
()
139
{
140
return
myEnv;
141
}
142
145
#if defined(_WIN32) && _MSC_VER==1200
146
//use macro...
147
#else
148
template
<
class
T>
149
int
DtMtlEnvironment::registerCmdLineVar
(
DtCmdLine::ValueArg<T>
&arg)
150
{
151
return
registerVar(arg.
getName
().c_str(), arg.
getInternalPtrValue
());
152
}
153
154
template
<
class
T>
155
int
DtMtlEnvironment::registerConfigVar
(
DtConfigVariable<T>
& arg)
156
{
157
return
registerVar(arg.
name
().
c_str
(), arg.
getInternalPtrValue
());
158
}
159
160
#endif
161
162
#ifdef DtUSE_UTILITIES_NAMESPACE
163
}
164
#endif
165
166
#endif
167
168
169
Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)