VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
fixedWingEntityStateRepository.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
11 
15 
16 #include <vlutil/vlMachineTypes.h>
17 #include <matrix/vlVector.h>
20 #include <readerWriter/rwReal.h>
21 #include "vrfutil/rwAirSpeedType.h"
22 
24 
26 {
29 };
30 
39 {
40 
41 protected:
44 
45 public:
46 
49  const DtObjectType& objectType,
50  DtVrfObjectParameters* parameters,
51  const DtString& name,
52  DtReaderWriterRegistry* parentRegistry = 0);
53 
56  const DtString& rwName = DtString::nullString(),
57  DtReaderWriterRegistry* parentRegistry = 0);
58 
60  const DtFixedWingEntityStateRepository & operator=
61  (const DtFixedWingEntityStateRepository & orig);
62 
65 
66  virtual bool init();
67 
69  virtual DtString type() const;
70 
72  virtual const int vrfMovingObjectStateRepositorySubType() const;
73 
75  virtual const int fixedWingEntityStateRepositorySubType() const;
76 
77  virtual bool createParameters();
78  virtual void initializeFromParameters();
79  virtual const DtFixedWingEntityParameters* fixedWingEntityParameters() const;
80 
82  virtual DtReal AOA() const;
83  virtual void setAOA (DtReal aoa);
84 
87  virtual DtReal minLiftSpeed() const;
88  virtual void setMinLiftSpeed (DtReal minLiftSpeed);
89 
91  virtual DtReal maxAltitude() const;
92  virtual void setMaxAltitude (DtReal maxAltitude);
93 
96  virtual DtReal maxYawRate() const;
97  virtual void setMaxYawRate (DtReal maxYawRate);
98 
101  virtual DtReal maxPitchRate() const;
102  virtual void setMaxPitchRate (DtReal maxPitchRate);
103 
106  virtual DtReal maxRollRate() const;
107  virtual void setMaxRollRate (DtReal maxRollRate);
108 
110  virtual DtReal maxClimbRate() const;
111  virtual void setMaxClimbRate (DtReal maxClimbRate);
112 
113  virtual DtReal orderedGroundSpeed() const;
114  virtual void setOrderedGroundSpeed (DtReal orderedGroundSpeed);
115 
116  virtual DtReal maxGroundSpeed() const;
117  virtual void setMaxGroundSpeed (DtReal maxGroundSpeed);
118 
119  virtual DtReal maxGroundStoppingDeceleration() const;
120  virtual void setMaxGroundStoppingDeceleration (DtReal maxGroundStoppingDeceleration);
121 
122  virtual DtReal groundTurningRadius() const;
123  virtual void setGroundTurningRadius (DtReal groundTurningRadius);
124 
125  virtual DtReal maxGroundSlope() const;
126  virtual void setMaxGroundSlope (DtReal maxGroundSlope);
127 
131  virtual bool onGround() const;
132 
135  virtual boost::tribool onTerrainSurface() const;
136 
140  virtual void setOnGround(bool onGround);
141 
145  virtual void setCurrentOrderedSpeed(const double currentOrderedSpeed);
146  virtual const double currentOrderedSpeed() const;
147 
148  virtual void setCurrentMaxSpeed(const double currentMaxSpeed);
149  virtual const double currentMaxSpeed() const;
150 
151  virtual void setCurrentMaxStoppingDeceleration(const double currentMaxStoppingDeceleration);
152  virtual const double currentMaxStoppingDeceleration() const;
153 
154  virtual void setCurrentTurningRadius(const double currentTurningRadius);
155  virtual const double currentTurningRadius() const;
156 
157  virtual void attachToParent(const DtUUID& parent);
158 
159  virtual void setCurrentMaxSlope(const double currentMaxSlope);
160  virtual const double currentMaxSlope() const;
161 
162  virtual void setOnGroundTolerance(double);
163  virtual double onGroundTolerance() const;
164 
165  virtual DtReal orderedAirSpeed() const;
166  virtual void setOrderedAirSpeed(DtReal orderedAirSpeed);
167 
168  virtual void setOrderedAirSpeedType(const DtAirSpeedType &airSpeedType);
169  virtual DtAirSpeedType orderedAirSpeedType() const;
170 
195  virtual void place (const DtVector& location, const DtReal heading,
196  bool clampToGroundFlag = true, bool* dataAvailable = 0,
197  bool requireAllData = false);
198 
199  virtual void placeAtAltitude (const DtVector& location, const DtReal heading);
200 
203  virtual void updateCurrentStateVars();
204 
208  virtual const DtGroundInteractionPt* noseSupport() const;
209  virtual DtGroundInteractionPt* noseSupport();
210  virtual void setNoseSupport(const DtVector& noseSupport);
211 
212  static DtVrfObjectStateRepository* creator (const DtString& name,
213  DtVrfObject* vrfObject, const DtObjectType& objectType,
214  DtVrfObjectParameters* parameters,
215  DtReaderWriterRegistry* parentRegistry);
216 
219  static DtFixedWingEntityStateRepository* isFixedWingEntityStateRepository(
220  DtSimObjectStateRepository* repository);
221 
222  static const DtFixedWingEntityStateRepository* isFixedWingEntityStateRepository(
223  const DtSimObjectStateRepository* repository);
224 
226  virtual void restoreEntity();
227 
230  virtual void updateAppearanceFromState();
231 
232 protected:
240 
246 
256 
260 
263 };
Definition: rwAirSpeedType.h:32
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:59
Definition: fixedWingEntityStateRepository.h:28
DtRwReal myMaxGroundSpeed
Definition: fixedWingEntityStateRepository.h:242
Contains the DtVrfMovingObjectStateRepository class declaration.
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
virtual bool init()
Our &#39;virtual&#39; constructor. Calls all the create&lt;&gt;() methods.
Description: This repository holds all information that is common to all the forms of all objects wit...
Definition: vrfMovingObjectStateRepository.h:29
DtRwReal myCurrentMaxStoppingDeceleration
Definition: fixedWingEntityStateRepository.h:253
virtual boost::tribool onTerrainSurface() const
virtual void initializeFromParameters()
virtual void place(const DtVector &location, bool *dataAvailable=0, bool requireAllData=false)
Place entity at &#39;location&#39;, on the ground, keeping its current heading.
DtRwReal myOnGroundTolerance
The value (in meters) that if a fixed wing is within this tolerance and the ground, it is considered on ground.
Definition: fixedWingEntityStateRepository.h:259
DtRwReal myMaxAltitude
Definition: fixedWingEntityStateRepository.h:235
DtRwReal myCurrentMaxSlope
Definition: fixedWingEntityStateRepository.h:255
*virtual const DtObjectType & objectType() const
The DtSimObjectStateRepository is an abstract base class (ABC) for all state repositories.
Definition: simObjectStateRepository.h:46
DtRwReal myCurrentTurningRadius
Definition: fixedWingEntityStateRepository.h:254
DtRwAirSpeedType myOrderedAirSpeedType
Definition: fixedWingEntityStateRepository.h:262
Definition: readerWriterRegistry.h:39
virtual void restoreEntity()
Called on a setRestore command, sets destroyed to false and sets resources to initial (parameter file...
virtual const int vrfMovingObjectStateRepositorySubType() const
Returns DtVrfMovingObjectStateRepositorySubTypeBase.
Description: This repository holds all information that is common to all the forms of all entity/aggr...
Definition: vrfObjectStateRepository.h:87
virtual DtString type() const
returns DtSimObjectStateRepositoryType
DtRwReal myMaxRollRate
Definition: fixedWingEntityStateRepository.h:239
DtRwReal myMaxYawRate
Definition: fixedWingEntityStateRepository.h:237
Definition: objectType.h:27
DtRwReal myMaxPitchRate
Definition: fixedWingEntityStateRepository.h:238
virtual void attachToParent(DtSimObjectStateRepository *parent)
Adds this state repository to the given parent&#39;s list of attached state repositories and updates myAt...
DtRwReal myMaxClimbRate
Definition: fixedWingEntityStateRepository.h:236
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
This repository holds all information that is common to all the forms of local fixed wing entities wi...
Definition: fixedWingEntityStateRepository.h:38
DtRwReal myMinLiftSpeed
Definition: fixedWingEntityStateRepository.h:234
DtRwReal myOrderedGroundSpeed
Definition: fixedWingEntityStateRepository.h:241
Definition: fixedWingEntityStateRepository.h:27
Contains the set of readable/writeable parameters assoicated with a fixed-wing entity.
Definition: fixedWingEntityParameters.h:56
DtRwReal myMaxGroundSlope
Definition: fixedWingEntityStateRepository.h:245
DtRwReal myAOA
Definition: fixedWingEntityStateRepository.h:233
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
DtAirSpeedType
Air Speed Type PDU enums.
Definition: rwAirSpeedType.h:24
DtRwReal myCurrentOrderedSpeed
These variables are used to represent the values for the current state of the FWE - for flying or dri...
Definition: fixedWingEntityStateRepository.h:251
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwReal myGroundTurningRadius
Definition: fixedWingEntityStateRepository.h:244
Class Invariant: The DtGroundInteractionPt class must always have a valid DtAttachedTerrain or DtSimM...
Definition: groundInteractionPt.h:28
DtRwReal myOrderedAirSpeed
Definition: fixedWingEntityStateRepository.h:261
DtFixedWingCurrentState
Definition: fixedWingEntityStateRepository.h:25
static DtVrfObjectStateRepository * creator(const DtString &name, DtVrfObject *vrfObject, const DtObjectType &objectType, DtVrfObjectParameters *parameters, DtReaderWriterRegistry *parentRegistry)
Creator method.
DtRwBoolean myOnGround
Definition: fixedWingEntityStateRepository.h:247
DtRwReal myCurrentMaxSpeed
Definition: fixedWingEntityStateRepository.h:252
virtual void placeAtAltitude(const DtVector &location, const DtReal heading)
Places entity at altitude regardless of terrain.
DtRwReal myMaxGroundStoppingDeceleration
Definition: fixedWingEntityStateRepository.h:243

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)