VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
vl
reflectedAggregateDIS.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
6
9
10
#ifndef DtReflectedAggregate_H_
11
#define DtReflectedAggregate_H_
12
13
#if DtDIS
14
15
#include <
vlutil/vlMachineTypes.h
>
16
#include "
reflectedObjectDIS.h
"
17
#include "
aggregateStateDecoder.h
"
18
#include "
aggregateStatePdu.h
"
19
#include "
globalObjectDesignator.h
"
20
#include "
objectIdHashKey.h
"
21
#include "
relativeLocationPdu.h
"
22
23
class
DT_DLL_VL
DtAggregateStateRepository
;
24
class
DT_DLL_VL
DtExerciseConn
;
25
class
DT_DLL_VL
DtReflectedAggregate
;
26
29
typedef
void (*
DtAggregateCallbackFunction
)(
30
DtReflectedAggregate
* obj,
void
* userData);
31
35
class
DT_DLL_VL
DtReflectedAggregate
:
public
DtReflectedObject
36
{
37
public
:
38
40
typedef
DtAggregateStateRepository
* (*DtStateRepCreator)();
41
42
public
:
43
45
DtReflectedAggregate
(
DtExerciseConn
* conn,
46
const
DtEntityIdentifier
&
id
,
47
const
DtEntityType
& type);
48
50
virtual
~
DtReflectedAggregate
();
51
54
virtual
DtAggregateStateRepository
* aggregateStateRep()
const
;
55
57
virtual
DtAggregateStateRepository
* asr()
const
;
58
62
virtual
DtStateRepository
*
stateRep
()
const
;
63
66
virtual
DtAggregateStateDecoder
* decoder();
67
69
virtual
const
DtEntityIdentifier
& aggregateID()
const
;
70
72
virtual
const
DtObjectId
& id()
const
;
73
76
virtual
const
DtGlobalObjectDesignator
&
globalId
()
const
;
77
80
virtual
void
processStateMessage
(
const
DtStateMsg
& msg);
81
82
virtual
void
processRelativeLocation(
const
DtRelativeLocationPdu
& pdu);
83
85
virtual
DtReflectedAggregate
*
next
()
const
;
86
virtual
DtReflectedAggregate
*
prev
()
const
;
87
89
virtual
DtReflectedAggregate
*
wrapNext
()
const
;
90
virtual
DtReflectedAggregate
*
wrapPrev
()
const
;
91
93
virtual
void
addPostUpdateCallback(
94
DtAggregateCallbackFunction
cb,
void
* userData);
95
virtual
void
removePostUpdateCallback(
96
DtAggregateCallbackFunction
cb,
void
* userData);
97
99
virtual
const
DtBaseHashKey
&
hashKey
()
const
;
100
102
virtual
DtString
idString
()
const
;
103
106
virtual
void
processAggregateState(
const
DtAggregateStatePdu
& pdu);
107
108
public
:
109
111
static
void
setStateRepCreator(DtStateRepCreator creator);
112
static
DtStateRepCreator stateRepCreator(
void
);
113
114
protected
:
115
117
DtReflectedAggregate
(
const
DtReflectedAggregate
& orig);
118
120
DtReflectedAggregate
&
operator=
(
const
DtReflectedAggregate
& orig);
121
122
protected
:
123
124
DtEntityIdentifier
myId
;
125
DtAggregateStateRepository
*
myAggregateStateRep
;
126
DtAggregateStateDecoder
*
myAggregateDecoder
;
127
DtEntityIdentifierHashKey
myHashKey
;
128
129
protected
:
130
131
static
DtStateRepCreator
theStateRepCreator
;
132
133
};
134
135
#endif
136
#endif
137
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
)