VR-Link API Documentation for DIS
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
iff.h
Go to the documentation of this file.
1
/*********************************************************************************
2
** Copyright (c) 2018 MAK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************************/
5
6
#pragma once
7
8
9
#include "
strategies/export.h
"
10
#include "
managedInterface/linkStrategy.h
"
11
#include "
managedInterface/managedInterface.h
"
12
#include "
managedInterface/publisherList.h
"
13
#include "
messages/iffDiscovery.h
"
14
#include "
messages/iffState.h
"
15
#include "
messages/iffRemoved.h
"
16
17
#include <string>
18
#include <map>
19
20
#include <
matrix/vlVector.h
>
21
22
class
DtMessage
;
23
class
DtManagedInterface
;
24
class
DtReflected;
25
class
DtReflectedIff
;
26
class
DtReflectedIffList
;
27
class
DtIffPublisher
;
28
class
DtIffStateRepository
;
29
30
31
class
MANAGEDINTERFACE_MODULE_DLL
DtIffStrategy
:
public
DtLinkStrategy
32
{
33
public
:
34
virtual
~
DtIffStrategy
();
35
36
std::string
name
();
37
static
std::string theName();
38
39
virtual
bool
init
();
40
virtual
void
tick
();
41
virtual
void
shutdown
();
42
43
static
DtLinkStrategy
* create(
DtManagedInterface
* gl);
44
45
protected
:
46
DtIffStrategy
(
DtManagedInterface
* link);
47
48
void
handleCSharpIffDiscovered(
DtMessage
* msg);
49
static
void
vrlIffDiscovered(
DtReflectedIff
* iff,
void
* usr);
50
void
handleVrlIffDiscovered(
DtReflectedIff
* iff);
51
52
void
handleCSharpIffState(
DtMessage
* msg);
53
static
void
vrlIffState(
DtReflectedIff
* iff,
void
* usr);
54
void
handleVrlIffState(
DtReflectedIff
* iff);
55
56
void
handleCSharpIffRemoved(
DtMessage
* msg);
57
static
void
vrlIffRemoved(
DtReflectedIff
* iff,
void
* usr);
58
void
handleVrlIffRemoved(
DtReflectedIff
* iff);
59
60
DtReflectedIffList
*
myReflectedIffs
;
61
DtPublisherList<DtIffPublisher>
*
myIffPubs
;
62
63
static
std::string
theStrategyName
;
64
65
DtMessageDelegate
*
myIffDiscoveredHandler
;
66
DtMessageDelegate
*
myIffStateHandler
;
67
DtMessageDelegate
*
myIffRemovedHandler
;
68
};
Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (
www.mak.com
)