VR-Vantage API Documentation
Home
Modules
Namespaces
Classes
Files
Libraries
Examples
Tutorials
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrfExtObjects
reflectedControlObject.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2014 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
6
#pragma once
7
8
9
10
#include <
vrfExtObjects/controlObjectRepository.h
>
11
12
#include <vl/reflectedEnvironmentProcess.h>
13
14
// Callback function that takes a DtReflectedControlObject
15
// and usr data.
16
17
class
DtReflectedControlObject
;
18
19
typedef
void
(*
DtControlObjectCallbackFunction
)
20
(
21
DtReflectedControlObject
*
obj
,
void
* userData
22
);
23
24
class
DtExerciseConn;
25
26
#include <
vrfExtObjects/vrfExtObjectsDefines.h
>
27
class
DT_DLL_vrfExtObjects
DtReflectedControlObject
:
public
DtReflectedEnvironmentProcess
28
{
29
public
:
30
#if DtHLA
31
// constructor
32
DtReflectedControlObject
(DtHlaObject* obj, DtExerciseConn* conn);
33
#elif (DtDIS || DtTENA)
34
// constructor
35
DtReflectedControlObject
36
(
37
DtExerciseConn* conn,
38
const
DtEntityIdentifier&
id
,
39
const
DtEntityType&
type
40
);
41
#else
42
# pragma message ( "No protocol defined." )
43
#endif
44
45
// destructor
46
virtual
~
DtReflectedControlObject
();
47
48
// Returns ptr to environmentProcessStateRepository --
49
// through which you can inspect current state info.
50
virtual
DtControlObjectRepository
* controlObjectStateRep()
const
;
51
52
// Synonym for environmentStateRep.
53
virtual
DtControlObjectRepository
* cosr()
const
;
54
55
// Implementation for abstract base class. Calls cosr().
56
virtual
DtStateRepository* stateRep()
const
;
57
58
#if DtDIS
59
// Process an environment process state PDU.
60
// Calls processEnvironmentProcess().
61
virtual
void
processStateMessage(
const
DtStateMsg& msg);
62
#endif
63
64
// Get the next and previous elements in the reflected
65
// cwenvironment process list.
66
virtual
DtReflectedControlObject
* nextCO()
const
;
67
virtual
DtReflectedControlObject
* prevCO()
const
;
68
69
// Get the next and previous elements, wrap at the ends of the list.
70
virtual
DtReflectedControlObject
* wrapNextCO()
const
;
71
virtual
DtReflectedControlObject
* wrapPrevCO()
const
;
72
73
// Environment Process callback registration/deregistration.
74
virtual
void
addPostUpdateCallback
75
(
76
DtControlObjectCallbackFunction
cb,
void
* userData
77
);
78
virtual
void
removePostUpdateCallback
79
(
80
DtControlObjectCallbackFunction
cb,
void
* userData
81
);
82
83
static
void
postUpdateCallback
84
(
85
DtReflectedControlObject
* obj,
void
* userData
86
);
87
88
virtual
void
processPostUpdateCallback(
DtReflectedControlObject
* obj);
89
90
// updateExtensions()
91
// extracts the extended environmental process state information,
92
// if present, from the state repository
93
virtual
void
updateExtensions();
94
95
private
:
96
// not implemented.
97
DtReflectedControlObject
(
const
DtReflectedControlObject
& orig);
98
DtReflectedControlObject
& operator=(
const
DtReflectedControlObject
& orig);
99
100
};
101
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)