VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrfobjcore
netIface.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2000 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
/*******************************************************************************
6
** $RCSfile: netIface.h,v $ $Revision: 1.13 $ $State: Exp $
7
*******************************************************************************/
8
11
17
18
19
#ifndef DtSimObjectNetInterface_H_
20
#define DtSimObjectNetInterface_H_
21
22
#include "
vrfutil/rwBoolean.h
"
23
#include "
vrfobjcore/netIfaceFact.h
"
24
25
26
class
DtVrfObject
;
27
class
DtStateRepository;
28
class
DtSimObjectNetInterfaceFactory
;
29
37
#include "
vrfobjcore/vrfobjcoreDefines.h
"
38
class
DT_DLL_vrfobjcore
DtSimObjectNetInterface
:
public
DtReaderWriter
39
{
40
protected
:
42
DtSimObjectNetInterface
();
43
44
public
:
45
50
DtSimObjectNetInterface
(
const
DtString
& name,
DtVrfObject
* simObject,
51
DtReaderWriterRegistry
* parentRegistry = 0,
52
bool
publishObject =
true
);
53
55
DtSimObjectNetInterface
(
const
DtSimObjectNetInterface
& orig,
56
DtReaderWriterRegistry
* parentRegistry = 0);
57
59
const
DtSimObjectNetInterface
&
operator=
(
const
DtSimObjectNetInterface
&
60
orig);
61
63
virtual
~
DtSimObjectNetInterface
();
64
67
virtual
bool
init
() {
return
true
; }
68
74
virtual
void
tick();
75
79
virtual
void
onTick() = 0;
80
83
virtual
DtVrfObject
* simObject()
const
;
84
87
virtual
DtStateRepository * networkState()
const
;
88
92
virtual
bool
isEntity()
const
= 0;
93
virtual
bool
isEnvironmental()
const
= 0;
94
98
virtual
bool
isLocal()
const
= 0;
99
102
virtual
DtString
type()
const
= 0;
103
106
virtual
int
maxNameLength()
const
;
107
110
static
void
addSimObjectNetInterfaceCreatorFcn(
const
DtString
& type,
111
DtSimObjectNetIfaceCreatorFcn
fcn);
112
113
static
void
setFactory(
DtSimObjectNetInterfaceFactory
* factory);
114
static
DtSimObjectNetInterfaceFactory
*
factory
();
115
117
static
DtSimObjectNetInterface
* createNetInterface(
118
const
DtString
& name,
const
DtString
& type,
DtVrfObject
* simObject,
119
DtReaderWriterRegistry
* parentRegistry = 0,
120
bool
publishObject =
true
);
121
125
static
int
maxNameLengthForInterfaceType(
const
DtString
& interfaceTypeString);
126
127
protected
:
128
129
DtVrfObject
*
mySimObject
;
130
DtStateRepository *
myNetworkState
;
131
132
static
DtSimObjectNetInterfaceFactory
*
theFactory
;
133
};
134
135
#endif
136
137
Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (
www.mak.com
)