VR-Forces 4.6 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
parachuteActuator.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2014 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
10
#pragma once
11
12
#include <
vrfmodel/fallingFromSkyActuatorComponent.h
>
13
14
#include <matrix/LibMatrix.h>
15
#include <vlpi/disEnums.h>
16
17
class
DtString
;
18
class
DtSimManager
;
19
class
DtVrfMovingObjectStateRepository
;
20
class
DtConstrainedAnalogInputPort
;
21
class
DtAnalogInputPort
;
22
class
DtBooleanInputPort
;
23
class
DtInputPortGroup
;
24
class
DtVectorInputPort
;
25
class
DtParachuteActuatorDescriptor
;
26
class
DtAnalogOutputPort
;
27
class
DtParachuteActuatorPSR
;
28
class
DtBooleanOutputPort
;
29
36
class
DT_DLL_vrfmodel
DtParachuteActuator
:
public
DtFallingFromSkyActuatorComponent
37
{
38
39
public
:
40
43
DtParachuteActuator
(
const
DtString
& name,
44
DtVrfObject
* owner,
45
DtSimManager
* simManager,
46
DtComponentDescriptor
* desc = 0,
47
DtReaderWriterRegistry
* parentRegistry = 0);
48
52
virtual
~
DtParachuteActuator
();
53
56
virtual
bool
init
();
57
60
virtual
const
char
*
type
()
const
;
61
62
virtual
void
tick
();
63
67
static
DtSimComponent
*
creator
(
const
DtString
& name,
68
DtVrfObject
* owner,
69
DtSimManager
* simManager,
70
DtComponentDescriptor
* desc = 0,
71
DtReaderWriterRegistry
* parentRegistry = 0);
72
73
74
protected
:
75
virtual
bool
createPortGroups
();
76
virtual
bool
createPorts
();
77
79
virtual
bool
isFallingApplicable
();
80
81
virtual
bool
checkFallingApplicable(
bool
& dataAvailable);
82
84
85
virtual
double
horizontalDragCoefficient()
const
;
86
virtual
double
verticalDragCoefficient()
const
;
87
virtual
double
windDragCoefficient()
const
;
88
virtual
double
turningRate()
const
;
90
91
virtual
void
calculateOrientation
(
const
DtDcm&
92
oldLocalOrientation,
const
DtVector
& newBodyRotationRates,
93
DtDcm& newLocalOrientation);
94
95
virtual
DtVector
calculateDragForces
(
const
DtVector
& oldLocalPosition,
96
const
DtVector
& oldLocalVelocity);
97
98
virtual
double
dragAccelerationFromSpeed
(
double
curSpeed,
double
coefficient)
const
;
99
100
private
:
101
103
DtParachuteActuator
();
104
106
DtParachuteActuator
(
const
DtParachuteActuator
& orig);
107
109
const
DtParachuteActuator
&
operator=
(
const
110
DtParachuteActuator
& orig);
111
112
protected
:
113
115
virtual
void
fallFromSky
();
116
118
virtual
void
executeSetPosture(DtLifeformState lifeformState);
119
121
virtual
bool
checkForLandingDamage()
const
;
122
124
virtual
double
downwardSpeed()
const
;
125
127
virtual
bool
createPSR();
128
130
virtual
bool
isCargoDoorOpen(
const
DtVrfObject
* entity)
const
;
131
134
virtual
double
percentDeployed()
const
;
135
136
virtual
void
updateHandItem();
137
138
protected
:
139
140
DtParachuteActuatorDescriptor
*
myParachuteActuatorDescriptor
;
141
144
DtBooleanInputPort
*
myDeployedPort
;
145
DtConstrainedAnalogInputPort
*
myLeftToggleInputPort
;
146
DtConstrainedAnalogInputPort
*
myRightToggleInputPort
;
147
DtInputPortGroup
*
myParachuteControlInputPortGroup
;
148
149
DtAnalogOutputPort
*
myMaxTurnRateOutputPort
;
150
DtBooleanOutputPort
*
myFallingOutputPort
;
151
152
DtAnalogInputPort
*
myAglInputPort
;
154
155
DtParachuteActuatorPSR
*
myProcessState
;
156
};
Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (
www.mak.com
)