VR-Link API Documentation for HLA 1.3
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
vl
emitterSysSR.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
6
7
10
11
#ifndef DtEmitterSystemRepository_H_
12
#define DtEmitterSystemRepository_H_
13
14
#include "
embedSystemSR.h
"
15
#include "
emittrBeamSR.h
"
16
#include <
vlutil/vlList.h
>
17
19
enum
DtEmitterSysRetCode
20
{
21
DtEmitterSuccess
,
22
DtBadBeamId
,
23
DtDuplicateBeamId
24
};
25
29
class
DT_DLL_VL
DtEmitterSystemRepository
:
public
DtEmbeddedSystemRepository
30
{
31
public
:
32
34
typedef
DtEmitterBeamRepository
* (*DtBeamStateRepCreator)();
35
36
public
:
37
39
DtEmitterSystemRepository
();
40
42
virtual
~
DtEmitterSystemRepository
();
43
45
DtEmitterSystemRepository
(
const
DtEmitterSystemRepository
& orig);
46
48
DtEmitterSystemRepository
&
operator=
(
const
DtEmitterSystemRepository
& orig);
49
51
virtual
DtStateRepository
*
clone
(
bool
copy =
false
)
const
;
52
53
55
virtual
void
setEmitterFunction(
DtEmissionFunc
function
);
56
virtual
DtEmissionFunc
emitterFunction()
const
;
57
59
virtual
void
setEmitterName(
DtEmitterSysName
name);
60
virtual
DtEmitterSysName
emitterName()
const
;
61
63
virtual
void
setEmitterNumber(
DtU8
number);
64
virtual
DtU8
emitterNumber()
const
;
65
67
virtual
void
setEventId(
const
DtEventId
&
id
);
68
virtual
const
DtEventId
& eventId()
const
;
69
71
virtual
void
printData
()
const
;
72
74
virtual
void
printDataToStream
(std::ostream& stream)
const
;
75
77
virtual
DtEmitterBeamRepository
* beamSRById(
78
DtU8
beamId,
79
DtEmitterSysRetCode
* retcode = NULL);
80
85
virtual
DtEmitterBeamRepository
* addBeam(
86
DtU8
beamId = 0,
DtBeamType
type =
DtRegularBeam
,
87
DtEmitterSysRetCode
*retcode = NULL);
88
94
virtual
DtEmitterSysRetCode
removeBeam(
DtU8
beamId);
95
#if DtHLA
96
virtual
DtEmitterSysRetCode
removeBeam(
const
DtGlobalObjectDesignator
&
id
);
97
#endif
98
100
virtual
int
numBeams()
const
;
101
103
virtual
const
DtList
* beamList()
const
;
104
virtual
DtList
* beamList();
105
107
bool
isMember(
DtEmitterBeamRepository
* bsr)
const
;
108
109
public
:
110
111
static
DtEmitterSystemRepository
*
create
();
112
114
static
DtBeamStateRepCreator setStateRepCreator(DtBeamStateRepCreator creator);
115
116
117
protected
:
118
virtual
void
purgeBeamList();
119
120
protected
:
121
DtEventId
myEventId
;
122
DtEmissionFunc
myEmitterFunction
;
123
DtEmitterSysName
myEmitterName
;
124
DtU8
myEmitterNumber
;
125
127
DtList
myBeamList
;
128
129
protected
:
130
131
static
DtBeamStateRepCreator
theBeamStateRepCreator
;
132
};
133
134
#endif //DtEmitterSystemRepository_H_
135
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
)