VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vl
exerciseConnInitializerDIS.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
6
#ifndef _dExConnInit_H_
7
#define _dExConnInit_H_
8
13
14
#if DtDIS
15
16
#include <
vlutil/vlUtil.h
>
17
#include <
cmdLine/cmdLine.h
>
18
#include <
vlutil/vlTimeStampType.h
>
19
#include <
vlutil/vlString.h
>
20
21
#include <
mtl/applicationSettings.h
>
22
23
#include <
mtl/configVariable.h
>
24
#include <
mtl/multiConfigVariable.h
>
25
26
#include <
vlutil/vlDisSocket.h
>
27
#include <
vlutil/vlInetAddr.h
>
28
29
#include <
vlpi/disEnums.h
>
30
31
class
DtMtlEnvironment
;
32
36
class
DT_DLL_VL
DtExerciseConnInitializer
37
{
38
public
:
40
DtExerciseConnInitializer
();
41
43
virtual
~
DtExerciseConnInitializer
();
44
46
DtExerciseConnInitializer
(
const
DtExerciseConnInitializer
& orig);
47
49
DtExerciseConnInitializer
& operator=(
const
DtExerciseConnInitializer
& orig);
50
52
virtual
void
setPort(
int
port);
53
55
virtual
int
port()
const
;
56
58
virtual
void
setExerciseId(
int
id
);
59
61
virtual
int
exerciseId()
const
;
62
64
virtual
void
setSiteId(
int
id
);
65
67
virtual
int
siteId()
const
;
68
70
virtual
void
setApplicationNumber(
int
num);
71
73
virtual
int
applicationNumber()
const
;
74
76
virtual
void
setUseAsynchIO(
bool
on);
77
79
virtual
bool
useAsynchIO()
const
;
80
83
virtual
void
setDestinationAddress(
const
DtString
&addr);
84
87
virtual
DtString
destinationAddress()
const
;
88
93
virtual
void
setSocket(
DtDisSocket
* sock);
94
96
virtual
DtDisSocket
*
socket
()
const
;
97
99
virtual
void
setNotifyLevel(
int
level);
100
102
virtual
void
setDisVersionToSend(
int
version);
103
107
virtual
void
setTimeStampType(
DtTimeStampType
relOrAbs);
108
110
virtual
DtTimeStampType
timeStampType()
const
;
111
113
virtual
void
setSendBufferSize(
int
numBytes);
114
116
virtual
int
sendBufferSize()
const
;
117
119
virtual
void
setReceiveBufferSize(
int
numBytes);
120
122
virtual
int
receiveBufferSize()
const
;
123
124
virtual
void
setUseIpv6(
bool
val);
125
virtual
bool
useIpv6()
const
;
126
132
virtual
void
setMulticastTtl(
int
ttl);
133
135
virtual
int
multicastTtl()
const
;
136
137
virtual
void
setMulticastAddresses(
const
std::vector<DtString>& addresses);
138
139
virtual
const
std::vector<DtString>& multicastAddresses()
const
;
140
143
virtual
void
setDeviceAddress(
const
DtString
& devAddr);
144
146
virtual
DtString
deviceAddress()
const
;
147
149
virtual
void
setSubnetMask(
const
DtString
& mask);
150
152
virtual
DtString
subnetMask()
const
;
153
155
virtual
void
setSuppressSelfReflect(
bool
yesNo);
156
158
virtual
bool
suppressSelfReflect()
const
;
159
161
virtual
void
setAttributePduStrategy(
DtAttributePduStrategy
strat);
162
164
virtual
DtAttributePduStrategy
attributePduStrategy()
const
;
165
166
public
:
167
169
static
DtString
vrlinkVersion();
170
171
private
:
172
int
myPort
;
173
int
myExerciseId
;
174
int
mySiteId
;
175
int
myApplicationNumber
;
176
bool
myUseAsynchIO
;
177
DtTimeStampType
myTimeStampType
;
178
int
mySendBufferSize
;
179
int
myReceiveBufferSize
;
180
int
myMulticastTtl
;
181
std::vector<DtString>
myMulticastAddresses
;
182
bool
myUseIpv6
;
183
bool
mySuppressSelfReflect
;
184
DtString
myDeviceAddress
;
185
DtString
myDestinationAddress
;
186
DtString
mySubnetMask
;
187
DtDisSocket
*
mySocket
;
188
int
myAttributePduStrategy
;
189
};
190
202
class
DT_DLL_VL
DtVrlApplicationInitializer
:
public
DtExerciseConnInitializer
203
{
204
public
:
205
DtVrlApplicationInitializer
(
int
argc,
char
* argv[],
const
DtString
& appName,
206
const
DtString
& version =
DtExerciseConnInitializer::vrlinkVersion
());
207
208
virtual
~
DtVrlApplicationInitializer
();
209
210
virtual
void
parseCmdLine();
211
215
virtual
void
loadFile(
const
DtString
& fileName);
216
218
virtual
void
saveFile(
const
DtString
& filename);
219
222
virtual
void
setArgc(
int
);
224
virtual
int
argc()
const
;
225
228
virtual
void
setArgv(
char
**);
230
virtual
char
** argv()
const
;
231
232
virtual
void
setPort
(
int
port);
233
virtual
int
port
()
const
;
234
235
virtual
void
setExerciseId
(
int
id
);
236
virtual
int
exerciseId
()
const
;
237
238
virtual
void
setApplicationNumber
(
int
num);
239
virtual
int
applicationNumber
()
const
;
240
241
virtual
void
setSiteId
(
int
id
);
242
virtual
int
siteId
()
const
;
243
244
virtual
void
setDestinationAddress
(
const
DtString
& address);
245
virtual
DtString
destinationAddress
()
const
;
246
247
virtual
void
setNotifyLevel
(
int
level);
248
249
//{@
251
virtual
void
setNotifyFileLevel(
int
level);
252
virtual
int
notifyFileLevel()
const
;
254
255
//{@
257
virtual
void
setNotifyFilename(
const
DtString
& file);
258
virtual
DtString
notifyFilename()
const
;
260
261
virtual
void
setSendBufferSize
(
int
numBytes);
262
virtual
int
sendBufferSize
()
const
;
263
264
virtual
void
setReceiveBufferSize
(
int
numBytes);
265
virtual
int
receiveBufferSize
()
const
;
266
268
virtual
void
setUseAsynchIO
(
bool
on);
269
271
virtual
bool
useAsynchIO
()
const
;
272
275
virtual
void
setMulticastTtl
(
int
ttl);
276
279
virtual
int
multicastTtl
()
const
;
280
283
virtual
void
setTimeStampType
(
DtTimeStampType
relOrAbs);
284
286
virtual
DtTimeStampType
timeStampType
()
const
;
287
288
virtual
void
setMulticastAddresses
(
const
std::vector<DtString>& addresses);
289
virtual
const
std::vector<DtString>&
multicastAddresses
()
const
;
290
291
virtual
void
setUseIpv6
(
bool
val);
292
virtual
bool
useIpv6
()
const
;
293
295
virtual
void
setSuppressSelfReflect
(
bool
yesNo);
296
298
virtual
bool
suppressSelfReflect
()
const
;
299
302
virtual
void
setDeviceAddress
(
const
DtString
& devAddr);
303
305
virtual
DtString
deviceAddress
()
const
;
306
308
virtual
void
setSubnetMask
(
const
DtString
& mask);
309
311
virtual
DtString
subnetMask
()
const
;
312
314
virtual
void
setAttributePduStrategy
(
DtAttributePduStrategy
strat);
315
317
virtual
DtAttributePduStrategy
attributePduStrategy
()
const
;
318
319
protected
:
321
virtual
void
initializeFileLogging();
322
323
protected
:
324
int
myArgc
;
325
char
**
myArgv
;
326
DtMtlEnvironment
*
myMtlEnv
;
327
328
virtual
void
initializeMtlParams();
329
virtual
void
loadMtlFile(
const
DtString
& fileName);
330
331
DtApplicationSettings
mySettings
;
332
DtConfigVariable<int>
myNotifyLevel
;
333
DtVariableGroup
myDisConnection
;
334
DtConfigVariable<int>
myConfigVarPort
;
335
DtConfigVariable<int>
myConfigVarExerciseId
;
336
DtConfigVariable<int>
myConfigVarSiteNumber
;
337
DtConfigVariable<int>
myConfigVarApplicationNumber
;
338
DtConfigVariable<int>
myConfigVarDisVersion
;
339
DtConfigVariable<DtString>
myConfigVarDestinationAddress
;
340
DtConfigVariable<int>
myConfigVarSendBufferSize
;
341
DtConfigVariable<int>
myConfigVarReceiveBufferSize
;
342
DtConfigVariable<bool>
myConfigVarUseAsyncIo
;
343
DtConfigVariable<bool>
myConfigVarUseIpv6
;
344
DtConfigVariable<bool>
myConfigVarSuppressSelfReflect
;
345
DtConfigVariable<bool>
myConfigVarUseAbsoluteTimestamps
;
346
DtConfigVariable<int>
myConfigVarMulticastTtl
;
347
DtMultiConfigVariable<DtString>
myConfigVarMulticastAddresses
;
348
DtConfigVariable<DtString>
myConfigVarDeviceAddress
;
349
DtConfigVariable<DtString>
myConfigVarSubnetMask
;
350
DtConfigVariable<int>
myConfigVarNotifyFileLevel
;
351
DtConfigVariable<DtString>
myConfigVarNotifyFilename
;
352
DtConfigVariable<int>
myConfigVarAttributeStrategy
;
353
354
// If logging is turned on, this printer will remain in memory
355
// even after this class is destroyed. Otherwise we would
356
// have to stop logging prematurely.
357
DtFilePrinter
*
myLogFilePrinter
;
358
359
mutable
DtInetAddr
myCachedDestAddr
;
360
int
myMtlUseAsynchronousIO
;
361
int
myMtlUseAbsoluteTimeStamps
;
362
int
myMtlUseIpv6
;
363
int
myMtlSuppressSelfReflect
;
364
};
365
366
#endif
367
#endif
368
Document ID: Generated on Mon Apr 8 04:49:21 EDT 2019 from SVN revision 197403
Copyright © 2005-2016 VT MÄK. All Rights Reserved (
www.mak.com
)