VR-Forces 4.6.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrfmodel
indirectArtilleryComponent.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2016 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
9
11
12
#pragma once
13
14
#include <vector>
15
#include "
vrfobjcore/actuatorComponent.h
"
16
#include "
vrfmodel/vrfmodelDefines.h
"
17
18
class
DtIndirectArtilleryPSR
;
19
class
DtSimMessage
;
20
class
DtIfIndirectArtilleryData
;
21
class
DtVrfObjectMessage
;
22
class
DtVrfOverlayObjectStateRepository
;
23
class
DtIndirectArtilleryDescriptor
;
24
29
class
DT_DLL_vrfmodel
DtIndirectArtilleryComponent
:
public
DtActuatorComponent
30
{
31
protected
:
33
DtIndirectArtilleryComponent
(
const
DtString
& name,
34
DtVrfObject
* owner,
35
DtSimManager
* simManager,
36
DtComponentDescriptor
* desc = 0,
37
DtReaderWriterRegistry
* parentRegistry = 0);
38
40
DtIndirectArtilleryComponent
(
const
DtIndirectArtilleryComponent
& orig);
41
43
virtual
DtIndirectArtilleryComponent
const
&
operator =
(
const
DtIndirectArtilleryComponent
& rhs);
44
45
public
:
47
virtual
~
DtIndirectArtilleryComponent
(
void
);
48
50
virtual
bool
init
();
51
57
virtual
bool
createPSR();
58
60
virtual
const
char
*
type
()
const
;
61
63
virtual
void
tick
();
66
static
DtSimComponent
* creator(
const
DtString
& name,
DtVrfObject
*
object
,
67
DtSimManager
* simManager,
DtComponentDescriptor
* compDescriptor,
68
DtReaderWriterRegistry
* parentRegistry);
69
70
static
void
requestIndirectArtilleryInformationCallback(
const
DtVrfObjectMessage
* msg,
void
* usr);
71
73
virtual
void
deactivate();
74
75
protected
:
77
virtual
void
setCoords(
DtTime
t);
78
virtual
void
setEllipseData(
const
DtIfIndirectArtilleryData
& data);
79
static
void
modifyCallBack (
DtSimMessage
* msg,
void
* usr);
80
virtual
void
processModifyCallback(
const
DtIfIndirectArtilleryData
& data);
81
82
virtual
void
processRequestIndirectArtilleryInformation(
const
DtVrfObjectMessage
* msg);
83
85
virtual
void
sendCurrentState ();
86
89
virtual
bool
isDataDifferent(
const
DtIfIndirectArtilleryData
& data)
const
;
90
91
virtual
void
createDetonation(
const
DtVector
& position,
double
altitudeAboveGround);
92
virtual
void
createFlare(
const
DtVector
& position,
double
altitudeAboveGround);
93
95
virtual
bool
onFlareList(
const
DtObjectType
& detonationType)
const
;
96
97
protected
:
99
bool
myDataInitialized
;
100
102
bool
myDataModified
;
103
106
std::vector<DtVector>
myVertices
;
107
110
DtIndirectArtilleryPSR
*
myProcessState
;
111
113
std::vector<double>
myBurstTimes
;
114
116
DtVector
myCenter
;
117
119
DtVector
myMajor
;
120
122
DtVector
myMinor
;
123
124
DtVrfOverlayObjectStateRepository
*
myOverlayStateRepository
;
125
126
bool
myWarned
;
127
128
const
DtIndirectArtilleryDescriptor
*
myDescriptor
;
129
};
Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (
www.mak.com
)