VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 
13 
14 #include <matrix/LibMatrix.h>
15 #include <vlpi/disEnums.h>
16 
17 class DtString;
18 class DtSimManager;
21 class DtAnalogInputPort;
22 class DtBooleanInputPort;
23 class DtInputPortGroup;
24 class DtVectorInputPort;
26 class DtAnalogOutputPort;
29 
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 
104 
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 
141 
148 
151 
154 
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)