15 #include <matrix/LibMatrix.h>
16 #include <vlpi/disEnums.h>
57 virtual bool init()
override;
61 virtual const char*
type()
const override;
63 virtual void tick()
override;
82 virtual bool checkFallingApplicable(
bool& dataAvailable);
86 virtual double horizontalDragCoefficient()
const;
87 virtual double verticalDragCoefficient()
const;
88 virtual double windDragCoefficient()
const;
89 virtual double turningRate()
const;
93 const DtDcm& oldLocalOrientation,
const DtVector& newBodyRotationRates, DtDcm& newLocalOrientation)
override;
95 virtual DtVector
calculateDragForces(
const DtVector& oldLocalPosition,
const DtVector& oldLocalVelocity)
override;
99 virtual double calcPitch(DtVector geocLoc, DtTaitBryan geocOri);
101 virtual double calcRoll(DtVector geocLoc, DtTaitBryan geocOri);
103 virtual void processLanding();
105 virtual void processChuteDeployment();
107 virtual void processFreeFall();
131 virtual bool checkForLandingDamage()
const;
134 virtual double downwardSpeed()
const;
137 virtual bool createPSR();
140 virtual bool isCargoDoorOpen(
const DtSimObject* entity)
const;
144 virtual double percentDeployed()
const;
virtual void calculateOrientation(const DtDcm &oldLocalOrientation, const DtVector &newBodyRotationRates, DtDcm &newLocalOrientation)
Uses current local orientation, rotationRates in SR, and dT. Results placed in object pointed to by o...
DtBaseParachuteActuator modifies the falling from sky actuator to have a stowed and deployed state...
Definition: baseParachuteActuator.h:37
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
virtual const char * type() const override
Returns a string identifies the class type of component. Type values are defined in compTypes...
Description: This repository holds all information that is common to all the forms of all objects wit...
Definition: vrfMovingObjectStateRepository.h:31
Instances of DtBooleanOutputPort are output ports through which data producers can send boolean data...
Definition: boolIOPort.h:45
virtual bool createPortGroups() override
Called by init. Derived classes should override this method to create all their input/output port gro...
DtInputPortGroup * myParachuteControlInputPortGroup
Ports and port groups.
Definition: baseParachuteActuator.h:155
virtual DtVector calculateDragForces(const DtVector &oldLocalPosition, const DtVector &oldLocalVelocity)
Calculates acceleration from Drag forces–In this case wind.
const DtFallingFromSkyActuatorComponent & operator=(const DtFallingFromSkyActuatorComponent &orig)
assignment operator; not implemented
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
Definition: readerWriterRegistry.h:39
virtual void tick() override
Calls isFallingApplicable to determine if it should do anything, and if so calls fallFromSky.
DtBooleanInputPort * myDeployedPort
Ports and port groups.
Definition: baseParachuteActuator.h:152
virtual bool isFallingApplicable()
Determines if this actuator is applicable. For the base actuator, it is only applicable if the entity...
virtual void fallFromSky()
Causes the entity to fall from the sky. Takes into account drag coefficient from descriptor.
virtual double dragAccelerationFromSpeed(double curSpeed) const
Calculates acceleration of object given current speed.
Instances of DtAnalogOutputPort are input ports through which data producers can send real numbers...
Definition: analogIOPort.h:45
DtBooleanOutputPort * myFallingOutputPort
Ports and port groups.
Definition: baseParachuteActuator.h:158
DtParachuteActuatorDescriptor * myParachuteActuatorDescriptor
Definition: baseParachuteActuator.h:148
DtPlatformLocalObjectFacade myPlatformLocalObjectFacade
Member to allow for access to platform specific data.
Definition: baseParachuteActuator.h:166
virtual bool createPorts()
Called by init. Derived classes should override this method to create all their input/output ports an...
DtParachuteActuatorPSR * myProcessState
Definition: baseParachuteActuator.h:163
DtConstrainedAnalogInputPort * myLeftToggleInputPort
Ports and port groups.
Definition: baseParachuteActuator.h:153
DtAnalogOutputPort * myMaxTurnRateOutputPort
Ports and port groups.
Definition: baseParachuteActuator.h:157
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:80
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
double calcRoll(const DtVector &geocLoc, const DtTaitBryan &geocOri)
DtAnalogInputPort * myAglInputPort
Ports and port groups.
Definition: baseParachuteActuator.h:160
DtFallingFromSkyActuatorComponent provides a simple, kinematics-based model for air motion based on t...
Definition: fallingFromSkyActuatorComponent.h:34
virtual bool init() override
to get access to the entity's localStateRepository, which this component will update, and then connect to the controller's ports.
Definition: parachuteActuatorDescriptor.h:17
DtConstrainedAnalogInputPort * myRightToggleInputPort
Ports and port groups.
Definition: baseParachuteActuator.h:154
double calcPitch(const DtVector &geocLoc, const DtTaitBryan &geocOri)
class DtParachuteActuatorPSR:
Definition: parachuteActuatorPSR.h:26
A locally simulated VRF object.
Definition: localObject.h:98