VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rotaryWingEntityStateRepository.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vlutil/vlMachineTypes.h>
12 #include <matrix/vlVector.h>
15 
17 
26 {
27 public:
28 
31  const DtObjectType& objectType,
32  DtVrfObjectParameters* parameters,
33  const DtString& rwName = DtString::nullString(),
34  DtReaderWriterRegistry* parentRegistry = 0);
35 
38  const DtString& rwName = DtString::nullString(),
39  DtReaderWriterRegistry* parentRegistry = 0);
40 
43 
46 
48  (const DtString& rwName = DtString::nullString(),
49  DtReaderWriterRegistry* parentRegistry = 0) const;
50 
51  virtual bool init();
52 
54  virtual DtString type() const;
55 
57  virtual const int vrfMovingObjectStateRepositorySubType() const;
58 
60  virtual const int rotaryWingEntityStateRepositorySubType() const;
61 
62  static DtVrfObjectStateRepository* creator (const DtString& name,
63  DtVrfObject* vrfObject,
64  const DtObjectType& objectType,
65  DtVrfObjectParameters* parameters,
66  DtReaderWriterRegistry* parentRegistry);
67 
70  static DtRotaryWingEntityStateRepository* isRotaryWingEntityStateRepository(
71  DtSimObjectStateRepository* repository);
72 
73  static const DtRotaryWingEntityStateRepository* isRotaryWingEntityStateRepository
74  (const DtSimObjectStateRepository* repository);
75 
76  virtual bool createParameters();
77 
78  virtual void initializeFromParameters();
79 
80  virtual const DtRotaryWingEntityParameters* rotaryWingEntityParameters() const;
81 
84  virtual DtReal altitude() const;
85  virtual void setAltitude (const DtReal val);
87 
90  virtual bool isCheckingTerrainDistance() const;
91  virtual void setIsCheckingTerrainDistance (const bool val);
92  virtual DtReal maxAltitude() const;
93  virtual void setMaxAltitude (const DtReal val);
95 
98  virtual const DtVector & desiredInertialPos() const;
99  virtual void setDesiredInertialPos(const DtVector & pos);
100 
101  virtual const DtVector & desiredInertialVel() const;
102  virtual void setDesiredInertialVel(const DtVector & vel);
103 
104  virtual const DtVector & desiredInertialAcc() const;
105  virtual void setDesiredInertialAcc(const DtVector & acc);
106 
107  virtual DtReal desiredInertialHead() const;
108  virtual void setDesiredInertialHead(DtReal head);
109 
110  virtual DtReal positionSelector() const;
111  virtual void setPositionSelector(DtReal val);
112 
113  virtual DtReal velocitySelector() const;
114  virtual void setVelocitySelector(DtReal val);
115 
116  virtual DtReal accelerationSelector() const;
117  virtual void setAccelerationSelector(DtReal val);
118 
119  virtual DtReal headingSelector() const;
120  virtual void setHeadingSelector(DtReal val);
121 
122  virtual DtReal aggressiveness() const;
123  virtual void setAggressiveness(DtReal val);
125 
128  virtual bool landed() const;
129  virtual void setLanded(bool value);
131 
134  virtual boost::tribool onTerrainSurface() const;
135 
138  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
139  const DtVariableBindingsList& variableBindings);
140 
142  virtual void setJoystickControl (const bool val);
143  virtual bool joystickControl() const;
144 
152  virtual void land(const DtVector& location, const DtReal heading);
153 
154 
183  virtual void place(const DtVector& location, const DtReal heading,
184  bool clampToGroundFlag = true, bool* dataAvailable = 0,
185  bool requireAllData = false);
186 
200  virtual void placeAtAltitude(const DtVector& desiredLocalPosition,
201  const DtReal newHeading, bool* dataAvailable = 0);
202 
206  virtual const DtGroundInteractionPt* noseSupport() const;
207  virtual DtGroundInteractionPt* noseSupport();
208  virtual void setNoseSupport(const DtVector& noseSupport);
209 
220  virtual void clampToGround (const DtVector& location, const DtReal heading,
221  bool* dataAvailable = 0, bool requireAllData = false);
222 
224  virtual void restoreEntity();
225 
227 
228  virtual double maxClimbRate() const;
229  virtual double maxYawRate() const;
230  virtual double maxPitchRate() const;
231  virtual double maxRollRate() const;
232  virtual double maxYawAcceleration() const;
233  virtual double maxPitchAcceleration() const;
234  virtual double maxRollAcceleration() const;
235  virtual double zeroCollectiveLiftAcceleration() const;
236  virtual double fullCollectiveLiftAcceleration() const;
238 
239 private:
240 
243 
244 protected:
245 
255 
258 
259  DtReal myAltitude;
261 
264 
267 };
268 

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)