16 #include <vlutil/vlMachineTypes.h>
17 #include <vl/detonationInteraction.h>
18 #include <matrix/vlVector.h>
25 #include <vl/objectId.h>
26 #include <vl/eventId.h>
50 const DtString& rwName = DtString::nullString(),
55 & orig,
const DtString& rwName = DtString::nullString(),
66 const DtString& rwName = DtString::nullString(),
78 virtual const int missileEntityStateRepositorySubType()
const;
95 virtual DtReal range()
const;
96 virtual void setRange(
const DtReal range);
99 virtual DtReal maxManeuverGs()
const;
100 virtual void setMaxManeuverGs(
const DtReal maxAcceleration);
103 virtual void setFuzeType(DtDetonatorFuze fuze);
104 virtual DtDetonatorFuze fuzeType()
const;
107 virtual void setWarheadType(DtWarheadType type);
108 virtual DtWarheadType warheadType()
const;
111 virtual void setFireAndForget(
bool isFireAndForget);
112 virtual bool fireAndForget()
const;
116 virtual void setAttacker(
const DtUUID&);
130 virtual DtReal radiusCEP()
const;
131 virtual void setRadiusCEP(
const DtReal radiusCEP);
144 virtual void place(
const DtReal heading);
153 virtual void place(
const DtReal heading,
const DtReal pitch);
162 virtual void place(
const DtVector& location,
const DtReal heading);
170 virtual void place(
const DtVector& location,
const DtReal heading,
178 virtual void setStartLocalPosition(
const DtVector& localPosition);
179 virtual void setStartLocalVelocity(
const DtVector& localVelocity);
180 virtual void setStartLocalOrientationWrtDatabase(
181 const DtTaitBryan& localOrientation);
186 virtual bool setTargetPoint(
const DtVector& localTerrainPoint);
189 virtual bool setTarget(
const DtUUID&);
191 virtual DtUUID target()
const;
197 virtual void setEventId(
const DtEventId& eventId);
198 virtual const DtEventId& eventId()
const;
207 virtual void setDisconnectedFromLauncher();
213 virtual bool missilePassedTarget(
double &distSquaredToTargetOut)
const;
218 virtual void detonationCallback(
const DtEvent&);
225 virtual double calcDistanceSquaredToTarget();
229 virtual DtReal transitionAngle()
const;
230 virtual void setTransitionAngle(DtReal
angle);
233 virtual DtReal proportionalNavigationGain()
const;
234 virtual void setProportionalNavigationGain(DtReal gain);
254 virtual void setStartLocalOrientation(
const DtTaitBryan&
255 topocentricOrientation);
258 virtual void sendTaskMessage();
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
DtReal myRange
Definition: missileStateRepository.h:262
DtRwVrfObjectReference myAttacker
Definition: missileStateRepository.h:287
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 'virtual' constructor. Calls all the create<>() methods.
DtVector myVectorToTarget
The instantaneous vector to the target for the current tick.
Definition: missileStateRepository.h:275
Description: This repository holds all information that is common to all the forms of all objects wit...
Definition: vrfMovingObjectStateRepository.h:26
virtual boost::tribool onTerrainSurface() const
bool myFireAndForget
Definition: missileStateRepository.h:266
virtual void initializeFromParameters()
virtual void place(const DtVector &location, bool *dataAvailable=0, bool requireAllData=false)
Place entity at 'location', on the ground, keeping its current heading.
This repository holds all information that is common to all the forms of missile entities within the ...
Definition: missileStateRepository.h:38
virtual double currentPitch() const
*virtual const DtObjectType & objectType() const
DtVrfMovingObjectStateRepository & operator=(const DtVrfMovingObjectStateRepository &orig)
Assignment Operator.
The DtSimObjectStateRepository is an abstract base class (ABC) for all state repositories.
Definition: simObjectStateRepository.h:46
Definition: readerWriterRegistry.h:39
double myLastDistanceSquaredToTarget
Definition: missileStateRepository.h:278
DtReal myRadiusCEP
Definition: missileStateRepository.h:267
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
This file contains the class declaration for the.
virtual DtString type() const
returns DtSimObjectStateRepositoryType
virtual DtSimObjectStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const
Clone.
DtReal myMaxManeuverGs
Definition: missileStateRepository.h:263
Definition: objectType.h:27
virtual void tick()
Tick function.
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DT_DLL_vrfutil double angle(double vec1[3], double vec2[3])
DtReal myProportionalNavigationGain
Definition: missileStateRepository.h:285
DtVector * myTargetPoint
Definition: missileStateRepository.h:271
double myDistanceSquaredToTarget
Definition: missileStateRepository.h:277
DtRwVrfObjectReference myTarget
Definition: missileStateRepository.h:288
DtDetonationPdu DtDetonationInteraction
Definition: DistributedSimulationDriver3A.h:14
class DtVrfObjectManager:
Definition: vrfObjectManager.h:201
Class used as the reader/writer implementation of the DtVrfObjectReference.
Definition: vrfObjectReference.h:204
static DtVrfObjectManager * myDetCbackRegWithThisEntMgr
Flag for indicating whether the detonation callback for munitions has been registered for this VrfObj...
Definition: missileStateRepository.h:282
virtual bool createParameters()
DtEventId myEventId
Definition: missileStateRepository.h:290
DtDetonatorFuze myFuzeType
Definition: missileStateRepository.h:264
DtWarheadType myWarheadType
Definition: missileStateRepository.h:265
DtReal myTransitionAngle
Definition: missileStateRepository.h:284
Contains the set of readable/writable parameters associated with an missile type of entity...
Definition: missileParameters.h:26
static DtVrfObjectStateRepository * creator(const DtString &name, DtVrfObject *vrfObject, const DtObjectType &objectType, DtVrfObjectParameters *parameters, DtReaderWriterRegistry *parentRegistry)
bool myMarkedForRemoval
Definition: missileStateRepository.h:269