72 virtual const char*
type()
const;
80 virtual void initProcessSR();
113 virtual double calculateRudderYawAcceleration();
119 virtual double calculateResistanceYawAcceleration();
128 virtual const DtVector calculateThrottleAcceleration();
134 virtual const DtVector calculateDragAcceleration();
141 virtual bool clampSmallVelocityToZero();
145 virtual double stoppingSpeed();
153 virtual void useFuel(
double fuelUsed);
160 virtual double fuelLeft()
const;
185 virtual void integratePosition(
double dT);
193 virtual void integrateOrientation(
double dT);
198 void constrainYawAcceleration(
double& yawAcceleration,
double yawRate,
199 double maxYawRate,
double dT);
204 virtual void updateRepository();
213 virtual bool createPSR();
DtSurfaceEntityStateRepository * mySurfaceEntityState
Definition: surfaceEntityActuator.h:231
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
virtual bool postAddComponentsInit()
Called after all components have been created, initialized and added to the component manager...
Definition: simComponent.h:107
DtSurfaceMovementPSR * myProcessState
Container for state data associated with this component. This state is saved and restored as part of ...
Definition: surfaceEntityActuator.h:274
DtSurfaceEntityActuatorDescriptor * mySurfaceEntityActuatorDescriptor
Definition: surfaceEntityActuator.h:232
Instances of DtBooleanOutputPort are output ports through which data producers can send boolean data...
Definition: boolIOPort.h:45
DtDcm myBodyToLocalMatrix
Definition: surfaceEntityActuator.h:262
Definition: surfaceMovementPSR.h:58
virtual bool init()
Overridden to cache a pointer to the entity's radio in this class.
DtVector myRelativeAcceleration
Definition: surfaceEntityActuator.h:267
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
DtUpdateRepositoryOutputPortGroup * myUpdateRepositoryOutputPortGroup
Port group used to set what values should be set into the VRF state repository. All values are in loc...
Definition: surfaceEntityActuator.h:280
Definition: readerWriterRegistry.h:39
DtBooleanOutputPort * mySmallVelocityClampedPort
Output Port Name: clamp-small-vel-zero Output Port Description: Output Port Default Value: True ...
Definition: surfaceEntityActuator.h:258
DtVector myBodyRotationRates
Definition: surfaceEntityActuator.h:269
End User Description: DtActuator is the base class for all actuator model components. Developer Description: The DtActuator base class caches a pointer to the entity's radio for convenience. Derived classes may have articulated parts that are configured from the DtActuatorComponentDescriptor's DtSimArtPartDescriptorList. For each articulated part in the list a DtArticulatedPartStateRepository will be created to store the data for the part such as it's location, rotation and so forth. These are created in the entity's DtVrfObjectStateRepository createParts() function. This call creates all the attached parts for all the actuators. These articulated state repositories are managed by the DtAttachmentManager. They are cached by their partType which is the DIS Enumeration describing the part from the disEnums.h file and was specified in the actuator's DtActuatorComponentDescriptor as descriped above. The partType is used as the category of the DtObjectType used to look up articulated parts in the DtAttachementManager. When an actuator needs access to a particular articulated part it looks it up by the part's object type.
Definition: actuatorComponent.h:47
DtConstrainedAnalogInputPort * myRudderPort
Input Port Name: rudder Input Port Description: Input Port Range: -1.0 to 1.0 Input Port Default Val...
Definition: surfaceEntityActuator.h:253
DtConstrainedAnalogInputPort * myThrottlePort
Input Port Name: throttle Input Port Description: Input Port Range: 0.0 to 1.0 Input Port Default Va...
Definition: surfaceEntityActuator.h:246
Provides a simple, kinematics-based model for surface vessels.
Definition: surfaceEntityActuator.h:46
DtTaitBryan myOrientation
Definition: surfaceEntityActuator.h:268
DtVector myLocalPosition
Definition: surfaceEntityActuator.h:265
bool myOutOfFuelWarningPrinted
Definition: surfaceEntityActuator.h:276
DtInputPortGroup * mySurfaceControlPortGroup
Input Port Group Name: surface-control Input Port Group Description:
Definition: surfaceEntityActuator.h:239
virtual void tick()
This gives the thread of control to the component. The component is ticked once each simulation from ...
This repository holds all information that is common to all the forms of local surface entities withi...
Definition: surfaceEntityStateRepository.h:26
DtVector myBodyRotationalAcceleration
Definition: surfaceEntityActuator.h:270
DtDcm myLocalToBodyMatrix
Definition: surfaceEntityActuator.h:263
DtVector myRelativeVelocity
Definition: surfaceEntityActuator.h:266
virtual bool createPorts()
Called by init. Derived classes should override this method to create all their input/output ports an...
Contains class declaration for DtSurfaceEntityActuatorDescriptor, descriptor for the DtSurfaceEntityA...
Definition: surfaceEntityActuatorDescriptor.h:26
virtual bool createPortGroups()
Called by init. Derived classes should override this method to create all their input/output port gro...
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:89
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:70
DtUpdateRepositoryOutputPortGroup is a data port group of a data consumer that contains methods and p...
Definition: updateRepositoryOutputPortGroup.h:31
virtual const char * type() const =0
Returns a string identifies the class type of component. Type values are defined in compTypes...
DtPlatformLocalObjectFacade myPlatformLocalObjectFacade
Member to allow for access to platform specific data.
Definition: surfaceEntityActuator.h:283
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86