46 virtual const char*
type()
const override;
49 virtual bool init()
override;
52 virtual void tick()
override;
68 static void clutterMoveCallback(
DtSimMessage* msg,
void* usr);
71 static void taskCompleteCallback(
DtSimMessage* msg,
void* usr);
85 virtual bool createUpdateRepositoryPortGroup();
97 virtual void lookupAndCacheProcessSR();
110 virtual bool getInitialAisInformation();
123 virtual bool setUpNextPathPoint();
130 virtual bool setUpMoveToCurrentPoint();
137 virtual bool canTurnToTarget(
const DtLocation3D& currentPosition,
142 virtual double currentTurnRadius(
const double speed);
double myMoveEndTime
Definition: shipClutterMovementController.h:221
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
Definition: surfaceEntityParameters.h:20
const DtAisTrack * myAisTrack
Convenient pointer to AIS track.
Definition: shipClutterMovementController.h:209
int myMmsi
MMSI passed from the task.
Definition: shipClutterMovementController.h:212
virtual const char * type() const override=0
Returns a string identifies the class type of component. Type values are defined in compTypes...
const DtSurfaceEntityParameters * myParameters
Definition: shipClutterMovementController.h:202
The DtShipClutterMovementController provides low-fidelity movement for clutter entities.
Definition: shipClutterMovementController.h:28
Abstract interface class to the AIS data service. This service provides access to Automatic Identific...
Definition: aisDataServiceInterface.h:28
DtUpdateRepositoryOutputPortGroup * myUpdateRepositoryPortGroup
A standard port group with ports already defined in it. For output to the updateRepository actuator i...
Definition: shipClutterMovementController.h:192
virtual void registerTaskMsgCallbacks()
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: singleTaskControllerComponent.h:22
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
double myMoveStartTime
Definition: shipClutterMovementController.h:220
DtPlatformLocalObjectFacade myPlatformLocalObjectFacade
Member to allow for access to platform specific data.
Definition: shipClutterMovementController.h:196
Definition: readerWriterRegistry.h:39
DtVector myLocalVelocityToTarget
Definition: shipClutterMovementController.h:223
virtual void updateTaskVisualizations()
Called to update task visualizations after every tick. Implemented by subclasses. ...
Definition: simComponent.h:443
MoveModeEnum
Definition: shipClutterMovementController.h:149
virtual bool init() override
Calls setRadio()
DtVector myLocalStartPosition
Definition: shipClutterMovementController.h:222
DtAisDataServiceInterface * myAisService
Convenience pointer to AIS Data Service.
Definition: shipClutterMovementController.h:199
DtSurfaceEntityStateRepository * mySurfaceEntityState
Definition: shipClutterMovementController.h:201
Instances of DtAnalogOutputPort are input ports through which data producers can send real numbers...
Definition: analogIOPort.h:45
double myStartHeading
Definition: shipClutterMovementController.h:224
Definition: shipClutterMovementController.h:152
File: simMsg.h.
Definition: simMessage.h:35
Class definition for one track created from AIS messages, i.e. the identifying information and time-s...
Definition: aisTrack.h:60
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
int myWarningsGiven
Indicates that a warning message about initialization has been printed already. Counts failures...
Definition: shipClutterMovementController.h:232
MoveModeEnum myMoveMode
Indicates what movement mode the controller is using to get the ship to the next point.
Definition: shipClutterMovementController.h:206
virtual void isClutterChanged()
Called when the is-clutter setting changes.
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:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
const DtTaskControllerComponent & operator=(const DtTaskControllerComponent &orig)
assignment operator
std::map< double, DtPathPoint >::const_iterator DtPathPointIter
Definition: aisDataServiceInterface.h:36
double myHeadingChangeRate
Definition: shipClutterMovementController.h:225
virtual void clearTask() override
If component is currently tasked, calls clearPendingSubtasks(), sets the tasked flag to false...
DtAisDataServiceInterface::DtPathPointIter myCurrentPointIter
Point the ship is moving toward currently.
Definition: shipClutterMovementController.h:215
Definition: shipClutterMovementController.h:153
double myTargetHeading
Definition: shipClutterMovementController.h:226
DtUpdateRepositoryOutputPortGroup is a data port group of a data consumer that contains methods and p...
Definition: updateRepositoryOutputPortGroup.h:31
A DtTaskMsg is a DtRadioMsg with a pointer to a task. The type of the taskMsg is just the type of the...
Definition: taskMessage.h:21
A locally simulated VRF object.
Definition: localObject.h:98
A location3D is a point in space, i.e. a geocentric coordinate.
Definition: scriptGeometry.h:22