VR-Link API Documentation for HLA 1516
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
strategies
universalHlaObj.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
#ifdef DtHLA
9
10
#include "
strategies/export.h
"
11
#include "
managedInterface/linkStrategy.h
"
12
#include "
managedInterface/delegate.h
"
13
#include "
managedInterface/publisherList.h
"
14
#include "
managedInterface/subscribeStrategy.h
"
15
16
#include <string>
17
#include <map>
18
19
#include <
vl/reflectedGenericObjectList.h
>
20
#include <
vl/objectPublisherHLA.h
>
21
#include <
vl/reflectedObjectHLA.h
>
22
23
class
DtMessage
;
24
class
DtManagedInterface
;
25
class
DtExerciseConn
;
26
27
class
DtUnversalHlaPublisher;
28
29
class
MANAGEDINTERFACE_MODULE_DLL
DtUniversalHlaObjStrategy
:
public
DtSubscribeStrategy
30
{
31
public
:
32
virtual
~
DtUniversalHlaObjStrategy
();
33
34
std::string
name
();
35
static
std::string theName();
36
37
virtual
bool
init
();
38
virtual
void
tick
();
39
virtual
void
shutdown
();
40
41
static
DtLinkStrategy
* create(
DtManagedInterface
* gl,
const
std::string& className);
42
43
protected
:
44
DtUniversalHlaObjStrategy
(
DtManagedInterface
* link,
const
std::string& className);
45
static
std::string
theStrategyName
;
46
47
void
handleCSharpHlaObjDiscovered(
DtMessage
* msg);
48
static
void
vrlHlaObjDiscovered(
DtReflectedGenericObject
* tx,
void
* usr);
49
void
handleVrlHlaObjDiscovered(
DtReflectedGenericObject
* tx);
50
51
void
handleCSharpHlaObjRemoved(
DtMessage
* msg);
52
static
void
vrlHlaObjRemoved(
DtReflectedGenericObject
* tx,
void
* usr);
53
void
handleVrlHlaObjRemoved(
DtReflectedGenericObject
* tx);
54
55
void
handleCSharpHlaObjState(
DtMessage
* msg);
56
static
void
vrlHlaObjState(
DtReflectedGenericObject
* obj,
void
* usr);
57
void
handleVrlHlaObjState(
DtReflectedGenericObject
* obj);
58
60
virtual
void
addVrlCallback
(
DtExerciseConn
* exConn);
61
virtual
void
removeVrlCallback
(
DtExerciseConn
* exConn);
62
63
DtExerciseConn
*
myExconn
;
64
std::string
myClassName
;
65
66
RTI::ObjectClassHandle
myClassHandle
;
67
std::map<std::string, RTI::AttributeHandle>
myHandleByName
;
68
std::map<RTI::AttributeHandle, std::string>
myNameByHandle
;
69
70
DtMessageDelegate
*
myHlaObjDiscoveredHandler
;
71
DtMessageDelegate
*
myHlaObjRemovedHandler
;
72
DtMessageDelegate
*
myHlaObjStateHandler
;
73
74
DtPublisherList<DtObjectPublisher>
myPubs
;
75
std::set<std::string>
myReflectedObjs
;
76
DtReflectedGenericObjectList
*
myRol
;
77
};
78
79
#endif
Document ID: Generated on Thu Feb 22 04:26:36 EST 2018 from SVN revision 186468
Copyright © 2005-2016 VT MÄK. All Rights Reserved (
www.mak.com
)