VR-Forces 4.5 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrvCigi
DtLosResponder.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2016 MaK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvCigi/vrvCigi.h
>
13
#include <
vrvCore/DtUniqueID.h
>
14
#include <
vrvUtil/DtVirtualBaseClass.h
>
15
16
#include <matrix/geodeticCoord.h>
17
18
#include <boost/signal.hpp>
19
20
class
CigiLosSegReqV3_2;
21
class
CigiLosVectReqV3_2;
22
23
namespace
makVrv
24
{
25
class
DtCigiConnection;
26
31
class
DT_DLL_VRVCIGI
DtLosResponder
32
{
33
public
:
34
struct
LosData
35
{
36
int
numberOfFramesBeforeSending
;
37
int
lastFrameSent
;
38
DtUniqueID
sourceEntity
;
39
DtVector
sourcePoint
;
40
DtUniqueID
destEntity
;
41
DtVector
destPoint
;
42
};
43
44
friend
class
DtLosResponderCreator
;
45
47
virtual
~
DtLosResponder
();
48
50
virtual
void
generateLosResponse(
int
losId,
DtUniqueID
entityId,
51
bool
visible,
double
range,
int
responseCount,
int
hostFrame);
52
55
virtual
void
processLosRequests();
56
58
boost::signal<void (DtUniqueID, const DtVector&, DtUniqueID, const DtVector&, int, int)>
59
signal_losSegRequested
;
60
61
protected
:
63
DtLosResponder
(
DtCigiConnection
& connection);
64
66
virtual
void
processLosSegmentRequest(
const
CigiLosSegReqV3_2& losSegReq);
67
69
virtual
void
processLosVectorRequest(CigiLosVectReqV3_2& losVecReq);
70
72
virtual
void
setDatabaseCoordinateFromGeodetic(
const
DtGeodeticCoord& from,
73
DtVector
& to);
74
76
virtual
void
addPeriodicLosRequest(
DtUniqueID
sourceEntityId,
const
DtVector
& sourcePoint,
77
DtUniqueID
destEntityId,
const
DtVector
& destPoint,
unsigned
int
updatePeriod,
78
int
losId);
79
81
virtual
void
sendLosRequest(
DtUniqueID
sourceId,
const
DtVector
& sourcePoint,
82
DtUniqueID
destId,
const
DtVector
& destPoint,
int
losId);
83
84
85
protected
:
86
DtCigiConnection
&
myConnection
;
87
std::map<int, LosData>
myLosIdToDataMap
;
88
};
89
91
class
DT_DLL_VRVCIGI
DtLosResponderCreator
:
public
DtVirtualBaseClass
92
{
93
public
:
95
DtLosResponderCreator
();
96
98
virtual
~
DtLosResponderCreator
();
99
101
static
DtLosResponderCreator
& instance(
DtDe
& de );
102
104
static
DtLosResponderCreator
& instance(
DtCigiConnection
& con );
105
107
static
void
copyInstance(
DtCigiConnection
& con,
DtDe
& de);
108
110
virtual
DtLosResponder
* create(
DtCigiConnection
& connection )
const
;
111
};
112
}
113
Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (
www.mak.com
)