VR-Link API Documentation for HLA 1.3
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
vl
emitterSystemRepository.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 "
embeddedSystemRepository.h
"
15
#include "
emitterBeamRepository.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
110
#ifdef DtDIS
111
112
113
virtual
void
setAttributeRecords(
const
std::vector<DtStandardVariableRecord*>& records);
114
virtual
const
std::vector<DtStandardVariableRecord*> attributeRecords(
unsigned
int
recordType = 0)
const
;
115
virtual
void
getAttributeRecords(std::vector<DtStandardVariableRecord*>& vec,
unsigned
int
recordType = 0)
const
;
116
virtual
void
addAttributeRecord(
DtStandardVariableRecord
* record );
117
virtual
void
clearAttributeRecords();
118
#endif
119
120
public
:
121
122
static
DtEmitterSystemRepository
*
create
();
123
125
static
DtBeamStateRepCreator setStateRepCreator(DtBeamStateRepCreator creator);
126
127
128
protected
:
129
virtual
void
purgeBeamList();
130
131
protected
:
132
DtEventId
myEventId
;
133
DtEmissionFunc
myEmitterFunction
;
134
DtEmitterSysName
myEmitterName
;
135
DtU8
myEmitterNumber
;
136
138
DtList
myBeamList
;
139
140
protected
:
141
142
static
DtBeamStateRepCreator
theBeamStateRepCreator
;
143
};
144
145
#endif //DtEmitterSystemRepository_H_
146
Document ID: Generated on Wed Oct 23 22:25:48 EDT 2013 from SVN revision 132765
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)