17 #include <boost/signals2.hpp>
18 #include <tbb/spin_mutex.h>
20 class DtLauncherControllerDescriptor;
24 namespace makVrfEvents
83 virtual const char*
type()
const;
90 virtual bool createMissileIdPort();
91 virtual bool createTargetPointPort();
92 virtual bool createTargetEntityIdPort();
119 virtual void disconnectMissileFromLauncher(
const DtUUID& missId);
129 virtual double abandonPassedMissileDistance();
130 virtual void setAbandonPassedMissileDistance(
const double&
distance);
145 static DtReaderWriter* provideMissilePassedTarget(
void* controller);
168 virtual void processObjectRemoved(
const DtUUID& missileId);
170 virtual void processDeleteObject(
const DtUUID& missileId);
UUID is a unique ID wrapper class.
Definition: rwUUID.h:226
tbb::spin_mutex myRemovedMissilesMutex
Definition: launcherController.h:239
DtUUID uuid
Definition: launcherController.h:197
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtVectorOutputPort * myTargetPointPort
Output Port Name: target-point Output Port Description: Local position of the target. Output Port Range: Output Port Default Value: Output Group Parent: weapon-control.
Definition: launcherController.h:225
const DtWeaponController & operator=(const DtWeaponController &orig)
assignment operator; not implemented
Instances of DtStringOutputPort are output ports through which data producers can send a DtString obj...
Definition: stringIOPort.h:52
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
DtWeaponController is a controller that extends the DtBaseWeaponController with the ability to accept...
Definition: weaponController.h:55
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
bool myRegisteredRemovedCallback
Definition: launcherController.h:234
Definition: readerWriter.h:85
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
virtual void tick()
If the myWaitingForFire flag is set and the munition loader is still loaded, the weapon has not fired...
Definition: readerWriterRegistry.h:39
Definition: detonationEvent.h:20
virtual void preFirstTickInit()
Starts with weapon loaded, if the weapon has a full complement of ammunition.
DtStringOutputPort * myTargetEntityIdPort
Output Port Name: target-entity Output Port Description: Object id of the target. Output Port Range: ...
Definition: launcherController.h:218
MissileSimObjectFacadeMap myMissileSimObjectFacadeMap
Definition: launcherController.h:237
DtLauncherController is a controller that accepts input from a target sensor, and provides ammunition...
Definition: launcherController.h:63
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
Instances of DtVectorOutputPort are output ports through which data producers can send a DtVector...
Definition: vectorIOPort.h:52
virtual const char * type() const
Returns a string identifies the class type of component. Type values are defined in compTypes...
MissileInfo(const MissileInfo &orig)
Definition: launcherController.h:195
MissileInfo()
Definition: launcherController.h:193
Definition: launcherController.h:191
std::vector< DtUUID > myRemovedMissiles
Definition: launcherController.h:240
virtual bool init()
Overridden to initialize values obtained from the descriptor.
std::map< DtUUID, DtMissileSimObjectFacade * > MissileSimObjectFacadeMap
Definition: launcherController.h:236
DtSimObjectReference simObjectReference
Definition: launcherController.h:200
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
double myAbandonPassedMissileDistance
If the missile passes its target within this distance, it will be abandoned and disconnected from the...
Definition: launcherController.h:232
virtual void registerAttributeFunctions()
Called to register functions that provide system attribute values. Called by init(). Empty in this class. Overridden in different components to add attribute provider functions.
Definition: simComponent.h:112
virtual bool createPorts()
Overridden to create the local ports.
DtStringOutputPort * myMissileIdPort
Output Port Name: missile-id Output Port Description: Object id of the missile. Output Port Range: O...
Definition: launcherController.h:211
virtual void fire()
updates weapon interface
boost::signals2::scoped_connection myMissileRemovedFromActiveListConnection
Definition: launcherController.h:242
MissileInfo(const DtUUID &u, DtSimObjectReference r)
Definition: launcherController.h:194
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