VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | Friends
DtLocalObject Class Reference

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, while next-frame data can be modified as needed.

Warning
No thread safety guarantees are made on this object during the simulation frame. It should only be accessed by the thread that is simulating the object.
Inheritance diagram for DtLocalObject:
Inheritance graph
[legend]

Classes

class  SimObjectCallback
 

Public Types

enum  ChangeFlag {
  ObjectName = 1, ForceType, ObjectLabel, OverlayParent,
  ObjectType, SubordinateOfForceLevel
}
 
enum  ReinitializeFlags { ReinitializeDefault = 0x00000000, ReinitializeKeepPSR = 0x00000001, ReinitializeStateData = 0x00000002 }
 
typedef std::list
< DtLuaScriptInterfaceExtension::CreatorUserPair
ScriptInterfaceExtensions
 

Public Member Functions

virtual ~DtLocalObject () override
 
const
makVrf::DtExternalNextFrameState
nextFrameState () const
 
makVrf::DtExternalNextFrameStatenextFrameState ()
 
template<typename T_Component >
T_Component * getNextFrameStateComponent ()
 
template<typename T_Component >
const T_Component * getNextFrameStateComponent () const
 
virtual bool addStateProperty (const DtString &context, const DtString &propertyName, DtPropertyInterface *property)
 
virtual void setNextFrameIsSubordinateOfForceLevel (bool)
 
virtual bool nextFrameIsSubordinateOfForceLevel () const
 
virtual bool nextFrameIsLocal () const
 
virtual bool isLocal () const override
 
virtual void removedFromSimulation ()
 
virtual void makeInvalid () override
 
bool isValid () const
 
bool publishObject () const
 
int publishFlag () const
 
virtual void setNextFrameIsClutterEntity (bool b)
 
virtual bool nextFrameIsClutterEntity () const
 
virtual void setNextFrameIsVrfSimulated (bool)
 
virtual bool nextFrameIsVrfSimulated () const
 
virtual void setNextFrameCallsign (const DtString &cs)
 
virtual const DtStringnextFrameCallsign () const
 
virtual bool isRemoteAttachedObject () const
 
virtual void setNextFrameEngagementRules (const DtString &)
 
virtual DtString nextFrameEngagementRules () const
 
virtual void setNextFrameIsTasked (bool)
 
virtual bool nextFrameIsTasked () const
 
virtual void setNextFrameIndependentlyTasked (bool)
 
virtual bool nextFrameIndependentlyTasked () const
 
virtual void setNextFrameGlobalId (const DtString &)
 
virtual void setNextFrameEntityId (const DtEntityIdentifier &id)
 
virtual DtEntityIdentifier nextFrameEntityId () const
 
virtual bool setNextFrameObjectName (const DtString &)
 
virtual DtString nextFrameObjectName () const
 
virtual void setNextFrameObjectType (const DtEntityType &)
 
virtual DtEntityType nextFrameObjectType () const
 
void setNotifyLevel (int)
 
DtSimulationServicessimulationServices () const
 
bool convertingToLocal () const
 
virtual void setConvertingToRemote (bool)
 
bool convertingToRemote () const
 
template<typename T_Component >
T_Component * addStateComponent (bool checkWritable=false, bool isRemote=false)
 
makVrf::DtFrameStateInterfaceaddStateComponent (makVrf::DtStateComponent::StateComponentType t)
 
makVrf::DtLaserDesignatorStateComponentaddLaserDesignator ()
 
void removeLaserDesignator (makVrf::DtLaserDesignatorStateComponent *)
 
makVrf::DtEmitterSystemStateComponentaddEmitterSystem ()
 
void removeEmitterSystem (makVrf::DtEmitterSystemStateComponent *)
 
makVrf::DtActiveSonarStateComponentaddActiveSonarSystem ()
 
void removeActiveSonarSystem (makVrf::DtActiveSonarStateComponent *)
 
makVrf::DtRadioTransmitterStateComponentaddRadioTransmitter ()
 
void removeRadioTransmitter (makVrf::DtRadioTransmitterStateComponent *)
 
makVrf::DtNavAidRadioTransmitterStateComponentaddNavAidRadioTransmitter ()
 
void removeNavAidRadioTransmitter (makVrf::DtNavAidRadioTransmitterStateComponent *)
 
makVrf::DtRadioReceiverStateComponentaddRadioReceiver ()
 
void removeRadioReceiver (makVrf::DtRadioReceiverStateComponent *)
 
makVrf::DtIffStateComponentgetOrCreateIffSystem ()
 
void removeIffSystem ()
 
makVrf::DtUnderwaterAcousticsStateComponentgetOrCreateUnderwaterAcousticsSystem (bool isRemote=false)
 
void removeUnderwaterAcousticsSystem ()
 
virtual void setNextFrameUnderFire (bool b)
 
virtual bool nextFrameUnderFire () const
 
virtual void setNextFrameInvulnerable (bool)
 
virtual bool nextFrameInvulnerable () const
 
virtual void setNextFrameUndetectable (bool)
 
virtual bool nextFrameUndetectable () const
 
virtual bool init ()
 
virtual bool create ()
 
bool isGlobalPlan () const
 
bool isSyncMatrix () const
 
virtual int publicationFlag () const
 
virtual bool isCapableOfTask (std::string taskName)
 
virtual bool convertToRemoteObject (DtString &error)
 
virtual bool convertToLocalObject (DtString &error, const std::string &archiveState)
 
virtual bool prepareForHandoff ()
 
virtual std::string archiveState () const
 
virtual
DtVrfObjectStateRepository
internalState ()
 
virtual const
DtVrfObjectStateRepository
internalState () const
 
virtual void prepareForReinitialization (ReinitializeFlags flags=ReinitializeDefault)
 
DtVrfObjectSubComponentTypesvrfSubComponentTypes () const
 
virtual void tick ()
 
virtual int scenarioRunId () const
 
virtual bool checkIfMoveOntoEmbarked (const DtVector &localPosition, const DtSimObject *&hit, const std::list< DtUUID > &additionalIgnore=std::list< DtUUID >())
 
virtual bool checkAndDisembarkIfEmbarked (const DtVector &localPosition)
 
virtual bool lowFidelityDisembarkHitCheck (const DtVector &localPosition) const
 
virtual bool highFidelityDisembarkHitCheck (const DtVector &localPosition) const
 
virtual int nextEmitterSystemId ()
 
bool initialized () const
 
DtVrfCallbackQueue::CallbackInterface::Ptr parallelContainer ()
 
virtual void cleanupItemsNeededForReinitialize ()
 
virtual bool reinitialize ()
 
virtual void setupFromMessageContent (const DtIfModifyVrfObject *ifModVrfObject)
 
virtual bool validNameLength (const DtString &name) const
 
virtual void sendVrfObjectCreated (unsigned long requestId=0, bool requestCreated=true)
 
virtual void setIsInMovementFlux (bool, const DtVector &proposedLocation=DtVector::zero())
 
State and Parameter Properties
virtual void setNextFrameParameterProperties (const DtRwProperties &)
 
const DtRwPropertiesnextFrameParameterProperties () const
 
virtual DtRwPropertiesnextFrameStateProperties ()
 
virtual const DtRwPropertiesnextFrameStateProperties () const
 
virtual const DtRwPropertiesstateProperties () const
 
virtual DtPropertyInterfacestateProperty (const DtString &propertyName)
 
virtual DtPropertyInterfacestateProperty (const DtString &context, const DtString &propertyName)
 
virtual const DtPropertyInterfacestateProperty (const DtString &propertyName) const
 
virtual const DtPropertyInterfacestateProperty (const DtString &context, const DtString &propertyName) const
 
virtual DtPropertyInterfaceaddStateProperty (const DtString &context, const DtString &propertyName, int initialValue)
 
virtual DtPropertyInterfaceaddStateProperty (const DtString &context, const DtString &propertyName, double initialValue)
 
virtual DtPropertyInterfaceaddStateProperty (const DtString &context, const DtString &propertyName, bool initialValue)
 
virtual DtPropertyInterfaceaddStateProperty (const DtString &context, const DtString &propertyName, const DtString &initialValue)
 
virtual DtPropertyInterfaceaddStateProperty (const DtString &context, const DtString &propertyName, const DtVector &initialValue)
 
Convenience methods
virtual void setNextFrameActivity (const DtString &)
 
virtual void setGlobalIdentifierForPublication (const DtString &)
 
virtual void setNextFrameExtendedData (const DtString &key, const DtString &value)
 
virtual void setNextFrameExtendedDataMap (const std::map< DtString, DtString > &)
 
virtual void setNextFrameExtendedDataMap (const std::map< std::string, std::string > &)
 
virtual void clearNextFrameExtendedData ()
 
virtual void appendNextFrameExtendedData (const std::map< DtString, DtString > &s)
 
virtual void setNextFrameExtendedLabel (int, const DtString &value)
 
virtual void clearNextFrameExtendedLabels ()
 
virtual void setNextFrameExtendedLabels (const std::map< int, DtString > &)
 
virtual DtAppearance nextFrameAppearance () const
 
TSPI Mutators

Methods for Time-Space-Position Information manipulation Sets the local position for the next frame

Parameters
vThe position vector in local coordinates
Note
For environmental objects with single vertex, also updates the vertex position
virtual void setNextFrameLocalPosition (const DtVector &v)
 
virtual DtString nextFrameLabel () const
 
virtual const DtVector & nextFrameLocalPosition () const
 
virtual void setNextFrameWorldPosition (const DtVector &v)
 
virtual const DtVector & nextFrameWorldPosition () const
 
virtual void setNextFrameParentPosition (const DtVector &v)
 
virtual const DtVector & nextFrameParentPosition () const
 
virtual void setNextFrameLocalOrientationMatrix (const DtDcm &v)
 
virtual const DtDcm & nextFrameLocalOrientationMatrix () const
 
virtual void setNextFrameLocalOrientationWrtDatabase (const DtTaitBryan &v)
 
virtual const DtTaitBryan & nextFrameLocalOrientationWrtDatabase () const
 
virtual void setNextFrameLocalOrientation (const DtTaitBryan &v)
 
virtual const DtTaitBryan & nextFrameLocalOrientation () const
 
virtual const DtTaitBryan & nextFrameTopographicOrientation () const
 
virtual void setNextFrameParentOrientation (const DtTaitBryan &v)
 
virtual const DtTaitBryan & nextFrameParentOrientation () const
 
virtual void setNextFrameWorldOrientation (const DtTaitBryan &v)
 
virtual void setNextFrameWorldOrientationMatrix (const DtDcm &v)
 
virtual const DtTaitBryan & nextFrameWorldOrientation () const
 
virtual const DtDcm & nextFrameWorldOrientationMatrix () const
 
virtual void setNextFrameLocalVertices (const DtList &vertices, DtVector &newGeometricCenter)
 
virtual void setNextFrameLocalVertices (const DtLocalVertexList &vertices, DtVector &newGeometricCenter)
 
virtual void removeNextFrameVertex (int iIndex)
 
virtual void addNextFrameLocalVertex (const DtVector &vertex)
 
virtual void addNextFrameLocalVertex (const DtVector &vertex, DtVector &newGeometricCenter)
 
virtual void setNextFrameWorldVertices (const std::vector< DtVector > &vertices, DtVector &newGeometricCenter)
 
virtual void setNextFrameWorldVertices (const DtVertexList &vertices, DtVector &newGeometricCenter)
 
virtual void setNextFrameWorldVertices (const DtList &vertices, DtVector &newGeometricCenter)
 
virtual void addNextFrameWorldVertex (const DtVector &vertex, DtVector &newGeometricCenter)
 
bool nextFrameIsDestroyed () const
 
int nextFrameDamageState () const
 
virtual void setNextFrameRelativeVertices (const DtLocalVertexList &vertices)
 
virtual const DtLocalVertexListnextFrameLocalVertices () const
 
virtual const DtVertexListnextFrameWorldVertices () const
 
virtual const DtLocalVertexListnextFrameRelativeVertices () const
 
virtual double nextFrameHeading () const
 
virtual double nextFramePitch () const
 
virtual double nextFrameRoll () const
 
Label Management

Methods for managing object labels and identifiers

virtual void setNextFrameLabel (const DtString &)
 
virtual const DtStringnextFrameExtendedData (const DtString &) const
 
virtual void setNextFrameInvisible (bool)
 
virtual bool nextFrameInvisible () const
 
virtual void setNextFrameOverlay (const DtString &)
 
virtual bool nextFrameSensorsKilled () const
 
virtual void setNextFrameSensorsKilled (bool sensorsKilled)
 
virtual void setNextFrameInvisibleSetByUser (bool b)
 
virtual bool nextFrameInvisibleSetByUser () const
 
virtual DtString nextFrameOverlay () const
 
Object Console Streams

Each VRF object has a console that is displayed as part of the information dialog box for that object. When extending the simulation engine, you can send messages to the object console window for a particular object. These messages are also printed to the vrfSim console and to the vrfSim log file, with the name of the object added as a prefix.

To write messages to the object console, use one of the following objectConsole*() stream methods. Each object console has five notification levels, and each level has a stream method. Choose a level appropriate to the nature of the message being printed to the console. The console will only display messages with a notification level equal to or higher than the notification level chosen by the user.

Translation Support
Object console messages can be translated using the trUtf8 macro defined in objectConsole.h. This allows messages to be extracted by lupdate into an untranslated.ts file for translation. Format:
trUtf8(format, module)
where module is the name of the class containing the console message. For example:
void MyNewClass::tick()
{
objectConsoleWarn() << trUtf8("arg one %1, arg two %2", "MyNewClass").arg(one).arg(two);
}

For complete details about translation files, see Section 2.5, Localizing the Graphical User Interface in the VR-Forces Users Guide.

virtual DtOutputStream & objectConsoleDebug (const DtString &channel="") const
 
virtual DtOutputStream & objectConsoleVerbose (const DtString &channel="") const
 
virtual DtOutputStream & objectConsoleInfo (const DtString &channel="") const
 
virtual DtOutputStream & objectConsoleWarn (const DtString &channel="") const
 
virtual DtOutputStream & objectConsoleError (const DtString &channel="") const
 
int notifyLevel () const
 
const DtObjectConsoleobjectConsole () const
 
Embarkation Management

Methods for managing object embarkation

Determines if this object is embarked in the next frame

Returns
True if embarkation succeeded, false otherwise

Make this call after attempting to embark an object to verify if the embarkation succeeded

virtual bool nextFrameIsEmbarked () const
 
virtual DtUUID nextFrameEmbarkedOn () const
 
virtual void setNextFrameEmbarkedOn (const DtUUID &u)
 
virtual bool nextFrameIsEmbarkedOn (const DtUUID &) const
 
virtual DtSimObjectReference nextFrameSimObjectEmbarkedOn () const
 
Echelon Management

Methods for managing the object's echelon identification

Sets the echelon ID for the next frame

Parameters
echelonIdThe new echelon ID to set
virtual void setNextFrameEchelonId (const DtEchelonId &)
 
virtual DtEchelonId nextFrameEchelonId () const
 
Force Type Management

Methods for managing the object's force type

Sets the force type for the next frame

Parameters
forceTypeThe new force type value to set
virtual void setNextFrameForceType (int)
 
virtual DtForceType nextFrameForceType () const
 
virtual void setNextFrameSessionId (int)
 
virtual int nextFrameSessionId () const
 
virtual void setNextFrameVrfMessageVersionSupported (int)
 
virtual int nextFrameVrfMessageVersionSupported () const
 
virtual void removeNextFrameExtendedData (const DtString &)
 
void removeStateComponent (const makVrf::DtFrameStateInterface *)
 
virtual void upgradeFromImport ()
 
Task Visualization

Methods for managing task visualization components

makVrf::DtTaskVisualizationStateComponentlineTaskVisualization (const DtString &visualName, const DtString &component)
 
makVrf::DtTaskVisualizationStateComponentpointTaskVisualization (const DtString &visualName, const DtString &component)
 
makVrf::DtTaskVisualizationStateComponentareaTaskVisualization (const DtString &visualName, const DtString &component)
 
makVrf::DtTaskVisualizationStateComponenttextTaskVisualization (const DtString &visualName, const DtString &component)
 
void removeTaskVisualization (makVrf::DtTaskVisualizationStateComponent *)
 
Operation Status Management
virtual void setOperationInProgress (int, bool)
 
virtual bool operationInProgress (int) const
 
virtual void clearOperationsInProgress ()
 
virtual bool createInternalState (const DtVrfObjectParameters *parameterEntry)
 
virtual bool setupSubComponentTypes ()
 
Resource Management

Gets a pointer to the DtSimResourceManager for this object

This resource manager interacts with all the resource managers in all the systems on this object, and allows finding any resource regardless of its location in the system hierarchy.

Note
In VR-Forces 3.10 and earlier, components accessed the resourceManager in the state repository to find available resources on the entity. In current versions, DtComponentSystem instances are responsible for managing resources, and components should interact with the resource managers in their local system via DtSimComponent::resourceManager().
const DtSimResourceManagerresourceManager () const
 
DtSimResourceManagerresourceManager ()
 
Component Accessors

Methods to access various sub-components of this object

virtual
DtVrfObjectCommunicationInterface
communicationInterface ()
 
virtual const
DtVrfObjectCommunicationInterface
communicationInterface () const
 
virtual
DtVrfObjectTerrainPreloadManager
terrainPreloadManager ()
 
virtual DtSimRadioradio () const
 
virtual DtSimTaskManagertaskManager () const
 
virtual DtScriptInterfaceHandlerscriptInterfaceHandler () const
 
virtual DtVrfObjectPlanManagervrfObjectPlanManager () const
 
virtual DtSimComponentManagercomponentManager ()
 
virtual const
DtSimComponentManager
componentManager () const
 
virtual DtSetDataManagersetDataManager ()
 
virtual const DtSetDataManagersetDataManager () const
 
virtual void cleanupItemsNeededForHandoff ()
 
virtual bool recreateItemsNeededFromHandoff ()
 
VRF4API_METHOD
DtVrfObjectStateRepository
vrfState ()
 
VRF4API_METHOD const
DtVrfObjectStateRepository
vrfState () const
 
VRF4API_METHOD void setObjectIdentifier (const DtEntityIdentifier &id)
 
VRF4API_METHOD void place (const DtReal heading, bool *dataAvailable=0, bool requireAllData=false)
 
VRF4API_METHOD void place (const DtVector &heading, bool *dataAvailable=0, bool requireAllData=false)
 
VRF4API_METHOD bool isVrfSimulated () const
 
VRF4API_METHOD void invokeSetLocationCompleteCallbacks ()
 
- Public Member Functions inherited from DtSimObject
 DtSimObject (const DtSimulationServices *simManager, makVrf::DtStateData *sd)
 
 DtSimObject (const DtSimulationServices *simManager, const DtUUID &uuid)
 
 DtSimObject (const DtSimulationServices *simManager, const DtEntityIdentifier &id)
 
 DtSimObject (const DtSimulationServices *simManager, const makVrf::DtExternalCurrentFrameState *)
 
virtual ~DtSimObject () override
 
virtual Dt3dBoundingVolume boundingVolume () const override
 
DtVector localBoundingVolumeCenterPosition () const
 
DtExtent extent () const
 
DtExtent roughExtent () const
 
void expandExtent (DtExtent &extent) const
 
bool isOnTopOf (const DtSimObject *o) const
 
bool isOnTopOf (const DtSimObject *o, double d) const
 
bool isOnTopOf (const DtSimObject *o, double d, const DtVector &position) const
 
virtual
DtVrfLocalObjectCreateInformation 
vrfLocalObjectCreateInformation () const
 
const DtSimulationServicessimulationServices () const
 
const DtVrfObjectParametersparameters () const
 
DtVrfObjectParametersduplicateParameters ()
 
double totalMass () const
 
const Coordinate_SystemcoordinateSystem () const
 
DtVector locationRelativeTo (const DtVector &, const DtSimObject *relativeTo) const
 
DtVector velocityRelativeTo (const DtVector &, const DtSimObject *relativeTo) const
 
DtVector accelerationRelativeTo (const DtVector &, const DtSimObject *relativeTo) const
 
DtTaitBryan orientationRelativeTo (const DtTaitBryan &, const DtSimObject *relativeTo) const
 
const DtRwPropertiesparameterProperties () const
 
double distanceToLocalVector (const DtVector &) const
 
DtSimObjectReference simObjectReference () const
 
DtSimObjectReference superior () const
 
virtual void superiorChanged () override
 
const DtSimObjectReferenceListattachments () const
 
bool isTopLevel () const
 
MAKVRinTerra::DtFeatureGeometry featureGeometry () const
 
const DtAttachedTerrainterrainAttachedTo () const
 
double distSquaredTo (const DtVector &) const
 
virtual void frameAdvanced () override
 
const DtPlatformSimObjectFacadeplatformSimObjectFacade () const
 
const
DtVrfSimulatedSimObjectFacade
vrfSimulatedSimObjectFacade () const
 
bool embarkedOnHighFidelityObject () const
 
DtSimObjectReference simObjectEmbarkedOn () const
 
DtSimObjectDecoratorgetOrCreateDecorator (const std::string &Decorator) const
 
VRF4API_METHOD const DtSimObjectvrfState ()
 
VRF4API_METHOD const DtSimObjectvrfState () const
 
VRF4API_METHOD const DtSimObjectsimState ()
 
VRF4API_METHOD const DtSimObjectsimState () const
 
VRF4API_METHOD bool operator== (const DtSimObject *rhs) const
 
VRF4API_METHOD const
DtSimulationServices
simManager () const
 
VRF4API_METHOD
DtSimulationServices
simManager ()
 
VRF4API_METHOD
makVrf::DtVrfObjectGeometry 
vrfObjectGeometry () const
 
VRF4API_METHOD const
DtPhysicalWorld
physicalWorld () const
 
VRF4API_METHOD DtSimObjectReference sharedReference () const
 
VRF4API_METHOD const
DtVrfObjectParameters
parameterEntry () const
 
VRF4API_METHOD const
DtSimObjectManager
simObjectManager () const
 
VRF4API_METHOD DtSimObjectReference vrfObject () const
 
VRF4API_METHOD DtSimObjectReference parent () const
 
VRF4API_METHOD double currentHeading () const
 
VRF4API_METHOD double currentPitch () const
 
VRF4API_METHOD double currentRoll () const
 
VRF4API_METHOD const DtStringmarkingText () const
 
VRF4API_METHOD bool isSpatiallyFrozen () const
 
VRF4API_METHOD bool isFrozen () const
 
VRF4API_METHOD double speed () const
 
VRF4API_METHOD double forwardSpeed () const
 
VRF4API_METHOD DtVector worldVelocity () const
 
VRF4API_METHOD DtVector localVelocity () const
 
VRF4API_METHOD DtVector bodyVelocity () const
 
VRF4API_METHOD DtVector relativeVelocity () const
 
VRF4API_METHOD DtVector parentVelocity () const
 
VRF4API_METHOD DtVector rotationalVelocity () const
 
VRF4API_METHOD DtVector worldAcceleration () const
 
VRF4API_METHOD DtVector localAcceleration () const
 
VRF4API_METHOD DtVector relativeAcceleration () const
 
- Public Member Functions inherited from makVrf::DtStateDataWrapper
 DtStateDataWrapper ()
 
 DtStateDataWrapper (const DtStateDataManager *simManager, const DtUUID &uuid)
 
 DtStateDataWrapper (const DtStateDataManager *simManager, const DtEntityIdentifier &id)
 
 DtStateDataWrapper (const DtStateDataManager *simManager, const DtExternalCurrentFrameState *)
 
 DtStateDataWrapper (const DtStateData *sd)
 
virtual ~DtStateDataWrapper ()
 
DtStateDataWrapperoperator= (const DtUUID &)
 
DtStateDataWrapperoperator= (const DtStateDataWrapper &rhs)
 
bool operator== (const DtUUID &rhs) const
 
bool operator== (const DtStateDataWrapper &rhs) const
 
bool operator!= (const DtUUID &rhs) const
 
bool operator!= (const DtStateDataWrapper &rhs) const
 
const DtUUIDuuid () const
 
const DtStringobjectName () const
 
DtString label () const
 
DtEntityType entityType () const
 
DtEntityType objectType () const
 
unsigned long long userData () const
 
const DtStringextendedData (const DtString &key) const
 
std::map< DtString, DtStringextendedDataMap () const
 
std::map< std::string,
std::string > 
extendedDataStdStringMap () const
 
bool hasExtendedData (const DtString &key) const
 
DtString overlay () const
 
DtAppearance appearance () const
 
int capabilities () const
 
DtEntityType guise () const
 
const DtRwPropertiesstateProperties () const
 
bool isClutterEntity () const
 
DtVrfObjectGeometry objectGeometry () const
 
const DtIffStateComponentiffStateComponent () const
 
std::vector< const
DtLaserDesignatorStateComponent * > 
laserDesignatorStateComponents () const
 
DtString awaiting () const
 
bool isSpotReport () const
 
bool isTDLReport () const
 
bool awaitingTransfer () const
 
bool isModified () const
 
template<typename T_Component >
const T_Component * getStateComponent () const
 
template<typename T_Component >
std::vector< const T_Component * > getStateComponentList () const
 
template<typename T_Component >
bool hasStateComponent () const
 
DtForceType forceType () const
 
const DtEntityIdentifier & entityId () const
 
const DtEntityIdentifier & objectIdentifier () const
 
DtSimulationAddress simEngineAddress () const
 
bool isDestroyed () const
 
int damageState () const
 
const DtStringglobalId () const
 
bool isEntityOrUnit () const
 
bool isSimulatedObject () const
 
bool isEntity () const
 
bool isValid () const
 
int sessionId () const
 
bool isVrfSimulatedObject () const
 
bool isCurrentlyTasked () const
 
bool isExecutingPlan () const
 
bool hasPlan () const
 
bool independentlyTasked () const
 
bool underFire () const
 
DtString rulesOfEngagement () const
 
DtEchelonId echelonId () const
 
bool isDeleted () const
 
const DtLocalVertexListlocalVertices () const
 
std::vector< DtVector > localVertexList () const
 
const DtVertexListworldVertices () const
 
std::vector< DtVector > worldVertexList () const
 
const DtLocalVertexListrelativeVertices () const
 
std::vector< DtVector > relativeVertexList () const
 
unsigned long long legionGlobalId () const
 
bool advancedFrame () const
 
DtUUID superiorUUID () const
 
bool isTopLevel () const
 
const
DtExternalFrameStateInterface
externalCurrentFrameState () const
 
const
DtSimulatedObjectStateComponent
currentFrameSimulatedObjectStateComponent () const
 
const DtLocationStateComponentcurrentFrameLocationStateComponent () const
 
const
DtStatePropertiesStateComponent
currentFrameStatePropertiesStateComponent () const
 
const DtVrfGeometryStateComponentcurrentFrameVrfGeometryStateComponent () const
 
const DtEntityStateComponentcurrentFrameEntityStateComponent () const
 
const DtVrfStateComponentcurrentFrameVrfStateComponent () const
 
std::set< intcurrentFrameModifiedStateComponentTypes () const
 
std::set< intnextFrameModifiedStateComponentTypes () const
 
DtRwVrfKinematicState kinematicState () const
 
const DtVector & worldPosition () const
 
const DtVector & localPosition () const
 
const DtVector & parentPosition () const
 
double distSquaredTo (const DtVector &) const
 
bool hasLocationChanged () const
 
bool objectVerticesChanged () const
 
bool worldVerticesChanged () const
 
bool haveVerticesChanged () const
 
virtual void firstFrameAdvance ()
 
const DtStateDatastateData () const
 
DtUUID hostGlobalId () const
 
DtString parentGlobalId () const
 
const DtTaitBryan & topographicOrientation () const
 
const DtTaitBryan & worldOrientation () const
 
const DtTaitBryan & localOrientation () const
 
const DtTaitBryan & parentOrientation () const
 
const DtTaitBryan & localOrientationWrtDatabase () const
 
const DtDcm & localOrientationMatrix () const
 
const DtDcm & parentOrientationMatrix () const
 
const DtDcm & worldOrientationMatrix () const
 
double heading () const
 
double pitch () const
 
double roll () const
 
bool isUnit () const
 
bool isEmbarked () const
 
DtUUID embarkedOn () const
 
bool isEmbarkedOn (const DtUUID &) const
 

Static Public Member Functions

static bool shouldArchiveExtendedAttribute (const DtString &s)
 
static void doNotArchiveAttribute (const DtString &s, bool b)
 
static DtLocalObjectCreatorFcn setLocalObjectCreatorFunction (DtLocalObjectCreatorFcn)
 
static DtLocalObjectCreatorFcn localObjectCreatorFunction ()
 
static DtLocalObjectcreate (DtSimulationServices *, const DtVrfLocalObjectCreateInformation &)
 
static DtLocalObjectcreateAndInit (DtSimulationServices *, const DtVrfLocalObjectCreateInformation &)
 

Public Attributes

boost::signals2::signal< void(DtLocalObject
*, DtVrfObjectHandoffData::HandoffFlag)> 
signal_handoffStep
 
boost::signals2::signal< void(DtLocalObject
*, DtVrfObjectHandoffData &)> 
signal_prepareForHandoff
 
boost::signals2::signal< void(DtLocalObject *)> signal_postInitFromParams
 
- Public Attributes inherited from makVrf::DtStateDataWrapper
boost::signals2::signal< void()> signal_objectVerticesChanged
 
boost::signals2::signal< void()> signal_extendedDataUpdated
 
boost::signals2::signal< void()> signal_simObjectDeleted
 
boost::signals2::signal< void(const
DtString &)> 
signal_discoveredReference
 
boost::signals2::signal< void(const
DtUUID &oldUUID, const DtUUID
&newUUID)> 
signal_uuidChanged
 
boost::signals2::signal< void(const
DtSimulationAddress &oldAddr,
const DtSimulationAddress
&newAddr)> 
signal_simEngineAddressChanged
 
boost::signals2::signal< void(const
DtString &oldName, const
DtString &newName)> 
signal_objectRenamed
 
boost::signals2::signal< void(const
DtUUID &oldSuperior, const
DtUUID &newSuperior)> 
signal_superiorChanged
 
boost::signals2::signal< void()> signal_isClutterChanged
 
boost::signals2::signal< void(DtStateComponent *)> signal_stateComponentAdded
 
boost::signals2::signal< void(DtStateComponent *)> signal_stateComponentRemoved
 
boost::signals2::signal< void()> signal_advancedFrame
 
boost::signals2::signal< void()> signal_firstFrameAdvance
 

Protected Types

typedef std::map< int, intOperationsInProgressCount
 
- Protected Types inherited from DtSimObject
typedef std::map< std::string,
DtSimObjectDecorator * > 
SimObjectDecorators
 

Protected Member Functions

 DtLocalObject (DtSimulationServices *simulationServices, const DtVrfLocalObjectCreateInformation &createInfo)
 
 DtLocalObject (DtSimulationServices *simulationServices)
 
virtual void startTick ()
 
virtual void tickComponents ()
 
virtual void endTick ()
 
virtual void createNavigationDecorator () override
 
virtual void setupStateRepository ()
 
virtual void internalStateInitializedFromParameters ()
 
virtual bool createCommunicationsInterface ()
 
virtual void initializeCommunicationInterfaceCallbacks ()
 
virtual void processSetOverlayLayerTask (const DtVrfObjectMessage *msg)
 
virtual bool createScriptInterfaceHandler ()
 
virtual bool createComponentManager ()
 
virtual bool initializeComponentManager ()
 
virtual bool createRadio ()
 
virtual bool createVrfObjectPlanManager ()
 
virtual bool createSetDataManager ()
 
virtual void tickDecorators ()
 
void createRemotelyControlledLocalObject ()
 
virtual void completeSetup () override
 
virtual bool createTaskManager ()
 
virtual void createCommunicationsInterface (const DtRadioDescriptorList &descList)
 
virtual void updateEntityHasTarget ()
 
virtual void setUUID (const DtUUID &) override
 
virtual void convertedToRemote ()
 
virtual std::map< DtString,
DtString
unarchivedData ()
 
virtual void clearDecorators () override
 
virtual void usingParameterSource (const DtString &) override
 
virtual void setupVrfObjectParameters () override
 
void cacheNextFrameComponents ()
 
void clearNextFrameCachedComponents ()
 
virtual void hostChanged (const DtUUID &oldHost, const DtUUID &newHost) override
 
virtual void isClutterChanged () override
 
virtual void setupExtendedDataFromParameterData ()
 
virtual bool canBePlaced () const
 
 DtLocalObject (const DtLocalObject &orig)
 
DtLocalObjectoperator= (const DtLocalObject &orig)
 
- Protected Member Functions inherited from DtSimObject
void tickDecorators ()
 
bool checkAndConnectForVrfStateComponent ()
 
void attachmentsChanged ()
 
virtual void stateDataAdded (makVrf::DtStateData *sd) override
 
- Protected Member Functions inherited from makVrf::DtStateDataWrapper
virtual const DtStateDatastateDataFor (const DtUUID &uuid) const
 
virtual void cacheComponents ()
 
virtual void clearCachedComponents ()
 
bool checkAndConnectForVrfStateComponent ()
 
void uuidChanged (const DtUUID &, const DtUUID &)
 
virtual void objectNameChanged (const DtString &oldText, const DtString &newText)
 
virtual void extendedDataUpdated ()
 
virtual void externalFrameStateToBeDestroyed ()
 
virtual void slot_stateComponentAdded (DtStateComponent *)
 
virtual void slot_stateComponentRemoved (DtStateComponent *)
 
virtual void simEngineAddressChanged (const DtSimulationAddress &oldAddress, const DtSimulationAddress &newAddress)
 

Static Protected Member Functions

static void setOverlayLayerTaskCallback (const DtVrfObjectMessage *msg, void *usr)
 

Protected Attributes

DtVrfObjectStateRepositorymyInternalState
 
DtVrfObjectSubComponentTypesmySubComponentTypes
 
makVrf::DtExternalNextFrameStatemyExternalNextFrameState
 
DtVrfObjectCommunicationInterfacemyCommunicationInterface
 
DtVrfObjectTerrainPreloadManagermyTerrainPreloadManager
 
DtSimRadiomyRadio
 
DtSimTaskManagermyTaskManager
 
DtScriptInterfaceHandlermyScriptInterfaceHandler
 
DtSimComponentManagermyComponentManager
 
DtVrfObjectPlanManagermyVrfObjectPlanManager
 
DtSetDataManagermySetDataManager
 
bool myCreatedStateData
 
boost::signals2::scoped_connection myConvertedToRemoteConnection
 
DtVrfLocalObjectCreateInformationmyLocalObjectCreateInformation
 
bool myInitializing
 
bool myInitialized
 
int myNextEmitterSystemId
 
DtAppearanceLocalObjectFacademyAppearanceLocalObjectFacade
 
ScriptInterfaceExtensions myScriptInterfaceExtensions
 
bool myConvertingToLocal
 
bool myConvertingToRemote
 
bool mySimulationCapable
 
bool myHasTarget
 
bool myControllersTicked
 
bool mySkipNextComponentTick
 
bool mySignalLocationComplete
 
bool myIsEnvironmental = false
 
DtRwPropertiesmyDefaultStateProperties
 
makVrf::DtLocationStateComponentmyNextFrameLocationStateComponent
 
makVrf::DtSimulatedObjectStateComponentmyNextFrameSimulatedObjectStateComponent
 
makVrf::DtVrfGeometryStateComponentmyNextFrameVrfGeometryStateComponent
 
makVrf::DtVrfStateComponentmyNextFrameVrfStateComponent
 
makVrf::DtStatePropertiesStateComponentmyNextFrameStatePropertiesStateComponent
 
const
makVrf::DtStatePropertiesStateComponent
myCurrentFrameStatePropertiesStateComponent
 
DtSimObjectReference myNextFrameSimObjectEmbarkedOn
 
DtMovementLocalObjectFacademyMovementLocalObjectFacade
 
OperationsInProgressCount myOperationsInProgressCount
 
int myFluxIndex = -1
 
DtVrfCallbackQueue::CallbackInterface::Ptr myParallelContainer
 
DtPlanmyReinitializePlan = nullptr
 
- Protected Attributes inherited from DtSimObject
const DtSimulationServicesmySimulationServices
 
ExtentInformation myExtentInformation
 
DtNavigationSimObjectDecoratormyNavigationSimDecorator = nullptr
 
const DtVrfObjectParametersmyParameters
 
DtVrfObjectParametersmyDuplicateParameters
 
DtSimObjectReferenceListmyAttachments
 
boost::signals2::scoped_connection myAttachmentsChangedConnection
 
boost::signals2::scoped_connection myHostChangedConnection
 
DtSimObjectReference mySuperior
 
DtSimObjectReference mySimObjectReference
 
tbb::spin_rw_mutex mySimObjectReferenceMutex
 
DtAttachedTerrainmyTerrainAttachedTo
 
DtAggregateSimObjectFacademyAggregateSimObjectFacade
 
DtPlatformSimObjectFacademyPlatformSimObjectFacade
 
DtVrfSimulatedSimObjectFacademyVrfSimulatedSimObjectFacade
 
SimObjectDecorators mySimObjectDecorators
 
tbb::spin_rw_mutex mySimObjectDecoratorMutex
 
- Protected Attributes inherited from makVrf::DtStateDataWrapper
const
DtExternalFrameStateInterface
myExternalCurrentFrameState
 
boost::signals2::scoped_connection myStateComponentAddedConnection
 
boost::signals2::scoped_connection myStateComponentRemovedConnection
 
boost::signals2::scoped_connection myDeletedConnection
 
boost::signals2::scoped_connection myAddedConnection
 
boost::signals2::scoped_connection myUUIDChangedConnection
 
boost::signals2::scoped_connection myObjectNameChangedConnection
 
boost::signals2::scoped_connection myExtendedDataUpdatedConnection
 
boost::signals2::scoped_connection myFirstFrameAdvancedConnection
 
boost::signals2::scoped_connection mySuperiorChangedConnection
 
boost::signals2::scoped_connection myAdvancedFrameConnection
 
boost::signals2::scoped_connection myIsClutterChangedConnection
 
boost::signals2::scoped_connection mySimEngineAddressChangedConnection
 
DtString myAwaiting
 
DtUUID myUUID
 
unsigned long long myLegionGlobalId
 
bool myIsDeleted
 
DtString myObjectName
 
DtEntityType myEntityType
 
DtUUID mySuperiorUUID
 
bool myAdvancedFrame
 
tbb::spin_rw_mutex myExternalCurrentFrameStateMutex
 
DtUUID myEmbarkedOn
 
const
DtSimulatedObjectStateComponent
myCurrentFrameSimulatedObjectStateComponent
 
const DtVrfStateComponentmyCurrentFrameVrfStateComponent
 
const DtEntityStateComponentmyCurrentFrameEntityStateComponent
 
const DtLocationStateComponentmyCurrentFrameLocationStateComponent
 
const DtVrfGeometryStateComponentmyCurrentFrameVrfGeometryStateComponent
 
const
DtStatePropertiesStateComponent
myCurrentFrameStatePropertiesStateComponent
 
bool myCachedComponents
 
const DtStateDatamyStateData = nullptr
 
const DtStateDataManagermyStateDataManager
 

Static Protected Attributes

static DtLocalObjectCreatorFcn theLocalObjectCreatorFunction
 
static std::set< DtStringtheDoNotArchiveAttributes
 

Friends

class DtVrfObjectStateRepository
 

Geometry Management

Methods for managing object geometric properties

boost::signals2::signal< void()> signal_preObjectReinitialize
 
boost::signals2::signal< void(bool
success)> 
signal_postObjectReinitialize
 
boost::signals2::signal< void()> signal_resourceChangedBySet
 
boost::signals2::signal< void()> signal_preUpgradeFromImport
 
boost::signals2::signal< void()> signal_postUpgradeFromImport
 
boost::signals2::signal< void()> signal_objectInitialized
 
boost::signals2::signal< void()> signal_objectRestored
 
boost::signals2::signal< void(DtLocalObject *)> signal_objectModifiedViaMessage
 
boost::signals2::signal< void(DtLocalObject *)> signal_newSensorContact
 
boost::signals2::signal< void(DtLocalObject *)> signal_navigationAreaChanged
 
boost::signals2::signal< void(DtLocalObject *)> signal_setLocationComplete
 
boost::signals2::signal< void()> signal_restored
 
boost::signals2::signal< void(const
DtLocalObject *, ChangeFlag)> 
signal_objectDataChanged
 
boost::signals2::signal< void(const
DtLocalObject *)> 
signal_localObjectAboutToBeDeleted
 
virtual void setNextFrameHalfLengthWidthHeight (double length, double width, double height)
 
virtual void setNextFrameObjectGeometry (const makVrf::DtVrfObjectGeometry &)
 
virtual void setNextFrameBoundingGeometryType (DtSimBoundingGeometry::DtSimBoundingGeometryType type)
 
virtual void setNextFrameBoundingVolume (const Dt3dBoundingVolume &b)
 
virtual void setNextFrameHasPlan (bool)
 
virtual bool nextFrameHasPlan () const
 
virtual void setNextFrameExecutingPlan (bool)
 
virtual bool nextFrameExecutingPlan () const
 
virtual void setNextFrameOccupantsHidden (int)
 
virtual bool nextFrameOccupantsHidden () const
 
virtual std::map< DtString,
DtString
nextFrameExtendedDataMap () const
 
virtual std::map< int, DtStringnextFrameExtendedLabels () const
 
virtual bool nextFrameIsOnTopOf (const DtSimObject *o, bool checkSupportPoints=false) const
 
virtual bool nextFrameIsOnTopOf (const DtSimObject *o, double d, bool checkSupportPoints=false) const
 
DtLocalObjectDecoratorgetOrCreateDecorator (const std::string &Decorator)
 
void setLocationComplete ()
 
virtual void setNextFrameStateProperties (const DtRwProperties &)
 
virtual bool nextFrameFuelLevelsFrozen () const
 
virtual bool nextFrameMunitionLevelsFrozen () const
 
virtual void setSimulationCapable (bool)
 
bool simulationCapable () const
 
virtual void setNextFrameBlockParachute (bool)
 
virtual bool nextFrameBlockParachute () const
 
virtual void setNextFrameOnTerrainSurface (bool b)
 
virtual bool nextFrameOnTerrainSurface () const
 

Settings Callbacks

Callback functions registered with the DtVrfSimSettings class. Called by DtVrfObject::init().

virtual void processReadDRThresholdSettings (const DtSettingsObject *settings)
 
static void readDRThresholdSettingsCallback (const DtSettingsObject *settings, void *usr)
 

Message Processing

virtual void processLogToFile (const DtVrfObjectMessage *msg)
 
virtual void processStopLoggingToFile (const DtVrfObjectMessage *msg)
 
virtual void addScriptExtension (DtLuaScriptInterfaceExtension::CreatorFcn extension, void *usr)
 
virtual void removeScriptExtension (DtLuaScriptInterfaceExtension::CreatorFcn extension, void *usr)
 
virtual const
ScriptInterfaceExtensions
scriptExtensions () const
 
static void logToFileCallback (const DtVrfObjectMessage *msg, void *usr)
 
static void stopLoggingToFileCallback (const DtVrfObjectMessage *msg, void *usr)
 

Decorator Management

Members for managing object decorators

typedef std::map< std::string,
DtLocalObjectDecorator * > 
LocalObjectDecorators
 
LocalObjectDecorators myLocalObjectDecorators
 

Member Typedef Documentation

typedef std::map<std::string, DtLocalObjectDecorator*> DtLocalObject::LocalObjectDecorators
protected
typedef std::map<int, int> DtLocalObject::OperationsInProgressCount
protected

Type definition for tracking operations in progress.

Member Enumeration Documentation

Enumerator
ObjectName 
ForceType 
ObjectLabel 
OverlayParent 
ObjectType 
SubordinateOfForceLevel 

Prepares this object for reinitialization. This means: 1) Making sure the systems are set to read only so they are not saved as part of the order of battle 2) Restarting the plan (if one) and clearing out the current task (if one and there is a plan)

Enumerator
ReinitializeDefault 
ReinitializeKeepPSR 
ReinitializeStateData 

Constructor & Destructor Documentation

DtLocalObject::DtLocalObject ( DtSimulationServices simulationServices,
const DtVrfLocalObjectCreateInformation createInfo 
)
protected

Use creator method to construct a new DtLocalObject.

Parameters
simulationServicesPointer to simulation services interface
createInfoInformation required for object creation
DtLocalObject::DtLocalObject ( DtSimulationServices simulationServices)
protected

Constructor using only simulation services.

Parameters
simulationServicesPointer to simulation services interface
virtual DtLocalObject::~DtLocalObject ( )
overridevirtual

destructor

DtLocalObject::DtLocalObject ( const DtLocalObject orig)
protected

copy constructor

Member Function Documentation

const makVrf::DtExternalNextFrameState* DtLocalObject::nextFrameState ( ) const
makVrf::DtExternalNextFrameState* DtLocalObject::nextFrameState ( )
template<typename T_Component >
T_Component* DtLocalObject::getNextFrameStateComponent ( )
inline

Template method to retrieve any state component that does not have a dedicated accessor method.

template<typename T_Component >
const T_Component* DtLocalObject::getNextFrameStateComponent ( ) const
inline

Template method to retrieve any state component that does not have a dedicated accessor method.

virtual void DtLocalObject::setNextFrameParameterProperties ( const DtRwProperties )
virtual

Returns the full list of the next frame external state properties.

const DtRwProperties& DtLocalObject::nextFrameParameterProperties ( ) const

Returns the full list of the next frame external state properties.

virtual DtRwProperties& DtLocalObject::nextFrameStateProperties ( )
virtual

Returns the full list of the next frame external state properties. NB: To get the internal state properties, use internalState()->internalStateProperties().

Reimplemented in DtRemoteAttachedObject.

Referenced by DtSimComponent::cachedNextFrameStateProperty().

virtual const DtRwProperties& DtLocalObject::nextFrameStateProperties ( ) const
virtual

Returns the full list of the next frame external state properties.

Reimplemented in DtRemoteAttachedObject.

virtual const DtRwProperties& DtLocalObject::stateProperties ( ) const
virtual

Gets current frame state properties, unless there are none, in which case it returns the next frame state properties.

Reimplemented in DtRemoteAttachedObject.

Referenced by DtSimComponent::cachedCurrentFrameStateProperty().

virtual DtPropertyInterface* DtLocalObject::stateProperty ( const DtString propertyName)
virtual

Returns the specified state property. Looks at both internal and external properties. If a context is specified, finds the state property within that context. For external state properties, the next frame data is found.

virtual DtPropertyInterface* DtLocalObject::stateProperty ( const DtString context,
const DtString propertyName 
)
virtual

Returns the full list of the next frame external state properties.

virtual const DtPropertyInterface* DtLocalObject::stateProperty ( const DtString propertyName) const
virtual

Returns the full list of the next frame external state properties.

virtual const DtPropertyInterface* DtLocalObject::stateProperty ( const DtString context,
const DtString propertyName 
) const
virtual

Returns the full list of the next frame external state properties.

virtual DtPropertyInterface* DtLocalObject::addStateProperty ( const DtString context,
const DtString propertyName,
int  initialValue 
)
virtual

Adds a new internal state property to the sim object. Returns a pointer to the newly added property.

virtual DtPropertyInterface* DtLocalObject::addStateProperty ( const DtString context,
const DtString propertyName,
double  initialValue 
)
virtual

Adds a new internal state property to the sim object. Returns a pointer to the newly added property.

virtual DtPropertyInterface* DtLocalObject::addStateProperty ( const DtString context,
const DtString propertyName,
bool  initialValue 
)
virtual

Adds a new internal state property to the sim object. Returns a pointer to the newly added property.

virtual DtPropertyInterface* DtLocalObject::addStateProperty ( const DtString context,
const DtString propertyName,
const DtString initialValue 
)
virtual

Adds a new internal state property to the sim object. Returns a pointer to the newly added property.

virtual DtPropertyInterface* DtLocalObject::addStateProperty ( const DtString context,
const DtString propertyName,
const DtVector &  initialValue 
)
virtual

Adds a new internal state property to the sim object. Returns a pointer to the newly added property.

virtual bool DtLocalObject::addStateProperty ( const DtString context,
const DtString propertyName,
DtPropertyInterface property 
)
virtual

Adds a new internal state property to the sim object. Ownership of the property is transferred to the sim object. Returns true if successful.

virtual void DtLocalObject::setNextFrameActivity ( const DtString )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setGlobalIdentifierForPublication ( const DtString )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setNextFrameExtendedData ( const DtString key,
const DtString value 
)
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setNextFrameExtendedDataMap ( const std::map< DtString, DtString > &  )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setNextFrameExtendedDataMap ( const std::map< std::string, std::string > &  )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::clearNextFrameExtendedData ( )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::appendNextFrameExtendedData ( const std::map< DtString, DtString > &  s)
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setNextFrameExtendedLabel ( int  ,
const DtString value 
)
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::clearNextFrameExtendedLabels ( )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setNextFrameExtendedLabels ( const std::map< int, DtString > &  )
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual DtAppearance DtLocalObject::nextFrameAppearance ( ) const
virtual

Overrides the global ID for a new local object.

Parameters
identifierThe new global identifier to use
Note
Must be set before publication. This can be implemented in a plugin that overrides the DtLocalObjectManager. See the objectManager example for more details.
virtual void DtLocalObject::setNextFrameLocalPosition ( const DtVector &  v)
virtual

Retrieves the primary label for the next frame.

Returns
The object's label for the next frame
Note
This is equivalent to the extended label at index 0

Reimplemented in DtRemoteAttachedObject.

virtual DtString DtLocalObject::nextFrameLabel ( ) const
virtual

Retrieves the primary label for the next frame.

Returns
The object's label for the next frame
Note
This is equivalent to the extended label at index 0
virtual const DtVector& DtLocalObject::nextFrameLocalPosition ( ) const
virtual

Retrieves the local position for the next frame.

Returns
Reference to the position vector in local coordinates
Note
Local position is relative to the parent object or local coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameWorldPosition ( const DtVector &  v)
virtual

Sets the world position for the next frame.

Parameters
vThe position vector in world coordinates
Note
For environmental objects with single vertex, also updates the world vertex

Reimplemented in DtRemoteAttachedObject.

virtual const DtVector& DtLocalObject::nextFrameWorldPosition ( ) const
virtual

Retrieves the world position for the next frame.

Returns
Reference to the position vector in world coordinates

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameParentPosition ( const DtVector &  v)
virtual

Sets the position relative to the parent object for the next frame.

Parameters
vThe position vector relative to the parent object
Note
Only relevant for objects that have a parent (like embarked entities)

Reimplemented in DtRemoteAttachedObject.

virtual const DtVector& DtLocalObject::nextFrameParentPosition ( ) const
virtual

Retrieves the position relative to the parent object for the next frame.

Returns
Reference to the position vector relative to the parent object
Note
Only relevant for objects that have a parent (like embarked entities)

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameLocalOrientationMatrix ( const DtDcm &  v)
virtual

Sets the local orientation matrix for the next frame.

Parameters
vThe direction cosine matrix representing local orientation
Note
Uses a direction cosine matrix (DCM) representation

Reimplemented in DtRemoteAttachedObject.

virtual const DtDcm& DtLocalObject::nextFrameLocalOrientationMatrix ( ) const
virtual

Retrieves the local orientation matrix for the next frame.

Returns
Reference to the direction cosine matrix representing local orientation
Note
Uses a direction cosine matrix (DCM) representation

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameLocalOrientationWrtDatabase ( const DtTaitBryan &  v)
virtual

Sets the local orientation with respect to the database for the next frame.

Parameters
vThe Tait-Bryan angles representing orientation with respect to database
Note
Uses Tait-Bryan angles (heading, pitch, roll) representation

Reimplemented in DtRemoteAttachedObject.

virtual const DtTaitBryan& DtLocalObject::nextFrameLocalOrientationWrtDatabase ( ) const
virtual

Retrieves the local orientation with respect to the database for the next frame.

Returns
Reference to the Tait-Bryan angles representing orientation with respect to database
Note
Uses Tait-Bryan angles (heading, pitch, roll) representation

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameLocalOrientation ( const DtTaitBryan &  v)
virtual

Sets the local orientation for the next frame using Tait-Bryan angles.

Parameters
vThe Tait-Bryan angles representing local orientation
Note
Uses Tait-Bryan angles (heading, pitch, roll) representation

Reimplemented in DtRemoteAttachedObject.

virtual const DtTaitBryan& DtLocalObject::nextFrameLocalOrientation ( ) const
virtual

Retrieves the local orientation for the next frame as Tait-Bryan angles.

Returns
Reference to the Tait-Bryan angles representing local orientation
Note
Uses Tait-Bryan angles (heading, pitch, roll) representation

Reimplemented in DtRemoteAttachedObject.

virtual const DtTaitBryan& DtLocalObject::nextFrameTopographicOrientation ( ) const
virtual

Retrieves the topographic orientation for the next frame.

Returns
Reference to the Tait-Bryan angles representing topographic orientation
Note
Topographic orientation is relative to the ellipsoid at the current position.

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameParentOrientation ( const DtTaitBryan &  v)
virtual

Sets the orientation relative to the parent object for the next frame.

Parameters
vThe Tait-Bryan angles representing orientation relative to parent
Note
Only relevant for objects that have a parent (like embarked entities)

Reimplemented in DtRemoteAttachedObject.

virtual const DtTaitBryan& DtLocalObject::nextFrameParentOrientation ( ) const
virtual

Retrieves the orientation relative to the parent object for the next frame.

Returns
Reference to the Tait-Bryan angles representing orientation relative to parent
Note
Only relevant for objects that have a parent (like embarked entities)

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameWorldOrientation ( const DtTaitBryan &  v)
virtual

Sets the world orientation for the next frame using Tait-Bryan angles.

Parameters
vThe Tait-Bryan angles representing world orientation
Note
World orientation is in the global coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameWorldOrientationMatrix ( const DtDcm &  v)
virtual

Sets the world orientation matrix for the next frame.

Parameters
vThe direction cosine matrix representing world orientation
Note
Uses a direction cosine matrix (DCM) representation in the global coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual const DtTaitBryan& DtLocalObject::nextFrameWorldOrientation ( ) const
virtual

Retrieves the world orientation for the next frame as Tait-Bryan angles.

Returns
Reference to the Tait-Bryan angles representing world orientation
Note
World orientation is in the global coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual const DtDcm& DtLocalObject::nextFrameWorldOrientationMatrix ( ) const
virtual

Retrieves the world orientation matrix for the next frame.

Returns
Reference to the direction cosine matrix representing world orientation
Note
Uses a direction cosine matrix (DCM) representation in the global coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameLocalVertices ( const DtList &  vertices,
DtVector &  newGeometricCenter 
)
virtual

Sets the local vertices using a DtList for the next frame.

Parameters
verticesList of vertices in local coordinates
newGeometricCenterReference to receive the updated geometric center
Note
Updates the geometric center of the object based on the new vertices

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameLocalVertices ( const DtLocalVertexList vertices,
DtVector &  newGeometricCenter 
)
virtual

Sets the local vertices using a DtLocalVertexList for the next frame.

Parameters
verticesList of local vertices
newGeometricCenterReference to receive the updated geometric center
Note
Updates the geometric center of the object based on the new vertices

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::removeNextFrameVertex ( int  iIndex)
virtual

Removes a vertex at the specified index for the next frame.

Parameters
iIndexIndex of the vertex to remove
Note
Adjusts the object geometry after removal

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::addNextFrameLocalVertex ( const DtVector &  vertex)
virtual

Adds a local vertex for the next frame.

Parameters
vertexThe vertex coordinates to add
Note
This version does not return the updated geometric center

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::addNextFrameLocalVertex ( const DtVector &  vertex,
DtVector &  newGeometricCenter 
)
virtual

Adds a local vertex for the next frame and updates the geometric center.

Parameters
vertexThe vertex coordinates to add
newGeometricCenterReference to receive the updated geometric center
Note
Updates the geometric center based on the addition

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameWorldVertices ( const std::vector< DtVector > &  vertices,
DtVector &  newGeometricCenter 
)
virtual

Sets the world vertices using a std::vector for the next frame.

Parameters
verticesVector of vertex coordinates in world space
newGeometricCenterReference to receive the updated geometric center
Note
Updates the geometric center and converts to local coordinates internally

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameWorldVertices ( const DtVertexList vertices,
DtVector &  newGeometricCenter 
)
virtual

Sets the world vertices using a DtVertexList for the next frame.

Parameters
verticesList of vertex coordinates in world space
newGeometricCenterReference to receive the updated geometric center
Note
Updates the geometric center and converts to local coordinates internally

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameWorldVertices ( const DtList &  vertices,
DtVector &  newGeometricCenter 
)
virtual

Sets the world vertices using a DtList for the next frame.

Parameters
verticesList of vertex coordinates in world space
newGeometricCenterReference to receive the updated geometric center
Note
Updates the geometric center and converts to local coordinates internally

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::addNextFrameWorldVertex ( const DtVector &  vertex,
DtVector &  newGeometricCenter 
)
virtual

Adds a world-space vertex for the next frame and updates the geometric center.

Parameters
vertexThe vertex coordinates in world space to add
newGeometricCenterReference to receive the updated geometric center
Note
Converts to local coordinates internally and updates the geometric center

Reimplemented in DtRemoteAttachedObject.

bool DtLocalObject::nextFrameIsDestroyed ( ) const

Determines if this object is marked as destroyed in the next frame.

Returns
True if object is destroyed, false otherwise
Note
This method is not applicable to all object types (e.g., tactical graphics)
int DtLocalObject::nextFrameDamageState ( ) const

Retrieves the damage state for the next frame.

Returns
Integer representing the damage state level
Note
Damage states typically range from undamaged to destroyed
virtual void DtLocalObject::setNextFrameRelativeVertices ( const DtLocalVertexList vertices)
virtual

Sets the relative vertices for the next frame.

Parameters
verticesList of vertex coordinates in relative reference frame
Note
Used for objects with geometry defined relative to a reference point

Reimplemented in DtRemoteAttachedObject.

virtual const DtLocalVertexList& DtLocalObject::nextFrameLocalVertices ( ) const
virtual

Retrieves the local vertices for the next frame.

Returns
Reference to the list of vertex coordinates in local space
Note
Local vertices are defined in the object's local coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual const DtVertexList& DtLocalObject::nextFrameWorldVertices ( ) const
virtual

Retrieves the world vertices for the next frame.

Returns
Reference to the list of vertex coordinates in world space
Note
World vertices are defined in the global coordinate system

Reimplemented in DtRemoteAttachedObject.

virtual const DtLocalVertexList& DtLocalObject::nextFrameRelativeVertices ( ) const
virtual

Retrieves the relative vertices for the next frame.

Returns
Reference to the list of vertex coordinates in relative space
Note
Used for objects with geometry defined relative to a reference point

Reimplemented in DtRemoteAttachedObject.

virtual double DtLocalObject::nextFrameHeading ( ) const
virtual

Retrieves the heading for the next frame.

Returns
Heading angle in radians
Note
Heading represents rotation around the vertical axis (yaw)

Reimplemented in DtRemoteAttachedObject.

virtual double DtLocalObject::nextFramePitch ( ) const
virtual

Retrieves the pitch for the next frame.

Returns
Pitch angle in radians
Note
Pitch represents rotation around the lateral axis (elevation)

Reimplemented in DtRemoteAttachedObject.

virtual double DtLocalObject::nextFrameRoll ( ) const
virtual

Retrieves the roll for the next frame.

Returns
Roll angle in radians
Note
Roll represents rotation around the longitudinal axis (bank)

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameLabel ( const DtString )
virtual

Retrieves extended data associated with the given key.

Parameters
keyThe key identifying the extended data to retrieve
Returns
The data value associated with the key
Note
Index of 0 is equivalent to using setNextFrameLabel
virtual const DtString& DtLocalObject::nextFrameExtendedData ( const DtString ) const
virtual

Retrieves extended data associated with the given key.

Parameters
keyThe key identifying the extended data to retrieve
Returns
The data value associated with the key
Note
Index of 0 is equivalent to using setNextFrameLabel
virtual void DtLocalObject::setNextFrameIsSubordinateOfForceLevel ( bool  )
virtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameIsSubordinateOfForceLevel ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameIsLocal ( ) const
virtual

Determines whether this object is marked as local in the next simulation frame.

Returns
True if the object will be local in the next frame, false otherwise

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::isLocal ( ) const
overridevirtual

Returns true if this object is a locally simulated object.

Reimplemented from DtSimObject.

virtual void DtLocalObject::removedFromSimulation ( )
virtual

Performs cleanup when removing the object from simulation.

Note
Call this before deleting the object to properly clean up components. This ensures components can still reference a valid local object during cleanup. This method is automatically called during object deletion as well.
virtual void DtLocalObject::setNextFrameInvisible ( bool  )
virtual
virtual bool DtLocalObject::nextFrameInvisible ( ) const
virtual
virtual void DtLocalObject::setNextFrameOverlay ( const DtString )
virtual
virtual bool DtLocalObject::nextFrameSensorsKilled ( ) const
virtual
virtual void DtLocalObject::setNextFrameSensorsKilled ( bool  sensorsKilled)
virtual
virtual void DtLocalObject::setNextFrameInvisibleSetByUser ( bool  b)
virtual
virtual bool DtLocalObject::nextFrameInvisibleSetByUser ( ) const
virtual
virtual DtString DtLocalObject::nextFrameOverlay ( ) const
virtual
virtual DtOutputStream& DtLocalObject::objectConsoleDebug ( const DtString channel = "") const
virtual

Debug-level message stream.

Parameters
channelOptional channel identifier for message routing
Returns
Stream for writing debug messages

Use for debugging level messages that only users attempting to debug operation of an object would be interested in.

virtual DtOutputStream& DtLocalObject::objectConsoleVerbose ( const DtString channel = "") const
virtual

Verbose-level message stream.

Parameters
channelOptional channel identifier for message routing
Returns
Stream for writing verbose messages

Use for general events or conditions for an object that are part of normal operation, but less important than Info level events.

virtual DtOutputStream& DtLocalObject::objectConsoleInfo ( const DtString channel = "") const
virtual

Information-level message stream.

Parameters
channelOptional channel identifier for message routing
Returns
Stream for writing informational messages

Use for important events of an object that are part of normal operation.

virtual DtOutputStream& DtLocalObject::objectConsoleWarn ( const DtString channel = "") const
virtual

Warning-level message stream.

Parameters
channelOptional channel identifier for message routing
Returns
Stream for writing warning messages

Displayed to the user by default. Use for situations that may lead to unexpected behavior.

virtual DtOutputStream& DtLocalObject::objectConsoleError ( const DtString channel = "") const
virtual

Error-level message stream.

Parameters
channelOptional channel identifier for message routing
Returns
Stream for writing error messages

Always displayed to the user. Use for important errors that indicate failure of some type.

int DtLocalObject::notifyLevel ( ) const

Retrieves the current notification level for this object.

Returns
The numeric notification level this object is set to for displaying messages
const DtObjectConsole* DtLocalObject::objectConsole ( ) const

Debug-level message stream.

Parameters
channelOptional channel identifier for message routing
Returns
Stream for writing debug messages

Use for debugging level messages that only users attempting to debug operation of an object would be interested in.

virtual void DtLocalObject::makeInvalid ( )
overridevirtual

Make this invalid by clearing the myExternalCurrentFrameState. This will also set the myIsDeleted flag to true.

Reimplemented from DtSimObject.

bool DtLocalObject::isValid ( ) const

Checks if this DtLocalObject is in a valid state and can be used.

Returns
True if object is valid, false otherwise
bool DtLocalObject::publishObject ( ) const
int DtLocalObject::publishFlag ( ) const
virtual void DtLocalObject::setNextFrameIsClutterEntity ( bool  b)
virtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameIsClutterEntity ( ) const
virtual
virtual void DtLocalObject::setNextFrameIsVrfSimulated ( bool  )
virtual
virtual bool DtLocalObject::nextFrameIsVrfSimulated ( ) const
virtual
virtual void DtLocalObject::setNextFrameCallsign ( const DtString cs)
virtual
virtual const DtString& DtLocalObject::nextFrameCallsign ( ) const
virtual
virtual bool DtLocalObject::isRemoteAttachedObject ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameEngagementRules ( const DtString )
virtual
virtual DtString DtLocalObject::nextFrameEngagementRules ( ) const
virtual
virtual void DtLocalObject::setNextFrameIsTasked ( bool  )
virtual
virtual bool DtLocalObject::nextFrameIsTasked ( ) const
virtual
virtual void DtLocalObject::setNextFrameIndependentlyTasked ( bool  )
virtual
virtual bool DtLocalObject::nextFrameIndependentlyTasked ( ) const
virtual
virtual void DtLocalObject::setNextFrameGlobalId ( const DtString )
virtual

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameEntityId ( const DtEntityIdentifier &  id)
virtual

Reimplemented in DtRemoteAttachedObject.

virtual DtEntityIdentifier DtLocalObject::nextFrameEntityId ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::setNextFrameObjectName ( const DtString )
virtual

Sets the object name for the next frame.

Parameters
nameThe new object name to set
Returns
True if marking text changed as a result, false otherwise

Reimplemented in DtRemoteAttachedObject.

virtual DtString DtLocalObject::nextFrameObjectName ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameObjectType ( const DtEntityType &  )
virtual

Reimplemented in DtRemoteAttachedObject.

virtual DtEntityType DtLocalObject::nextFrameObjectType ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

void DtLocalObject::setNotifyLevel ( int  )
DtSimulationServices* DtLocalObject::simulationServices ( ) const
bool DtLocalObject::convertingToLocal ( ) const
inline
virtual void DtLocalObject::setConvertingToRemote ( bool  )
virtual
bool DtLocalObject::convertingToRemote ( ) const
inline
template<typename T_Component >
T_Component* DtLocalObject::addStateComponent ( bool  checkWritable = false,
bool  isRemote = false 
)
inline

Adds a state component of the specified template type.

Template Parameters
T_ComponentThe component type to add
Parameters
checkWritableWhether to verify the component is writable
isRemoteWhether the component should be marked as remote
Returns
Pointer to the newly added component
Exceptions
makVrf::DtUnimplementedMethodIf the object is invalid

References makVrf::DtStateData::getStateComponent(), makVrf::DtStateDataWrapper::isValid(), DtSimObject::mySimulationServices, and makVrf::DtStateComponent::setIsRemoteComponent().

virtual bool DtLocalObject::nextFrameIsEmbarked ( ) const
virtual

Retrieves the UUID of the entity this object will be embarked on in the next frame.

Returns
UUID of the carrier entity or a null UUID if not embarked

Reimplemented in DtRemoteAttachedObject.

virtual DtUUID DtLocalObject::nextFrameEmbarkedOn ( ) const
virtual

Retrieves the UUID of the entity this object will be embarked on in the next frame.

Returns
UUID of the carrier entity or a null UUID if not embarked

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameEmbarkedOn ( const DtUUID u)
virtual

Retrieves the UUID of the entity this object will be embarked on in the next frame.

Returns
UUID of the carrier entity or a null UUID if not embarked

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameIsEmbarkedOn ( const DtUUID ) const
virtual

Retrieves the UUID of the entity this object will be embarked on in the next frame.

Returns
UUID of the carrier entity or a null UUID if not embarked

Reimplemented in DtRemoteAttachedObject.

virtual DtSimObjectReference DtLocalObject::nextFrameSimObjectEmbarkedOn ( ) const
virtual

Retrieves the UUID of the entity this object will be embarked on in the next frame.

Returns
UUID of the carrier entity or a null UUID if not embarked

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameEchelonId ( const DtEchelonId )
virtual
virtual DtEchelonId DtLocalObject::nextFrameEchelonId ( ) const
virtual
virtual void DtLocalObject::setNextFrameForceType ( int  )
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map

Reimplemented in DtRemoteAttachedObject.

virtual DtForceType DtLocalObject::nextFrameForceType ( ) const
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameSessionId ( int  )
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map
virtual int DtLocalObject::nextFrameSessionId ( ) const
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map
virtual void DtLocalObject::setNextFrameVrfMessageVersionSupported ( int  )
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map
virtual int DtLocalObject::nextFrameVrfMessageVersionSupported ( ) const
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map
virtual void DtLocalObject::removeNextFrameExtendedData ( const DtString )
virtual

Removes a specific key from the extended data map.

Parameters
keyThe key to remove from the extended data map
void DtLocalObject::removeStateComponent ( const makVrf::DtFrameStateInterface )

Removes a state component from this object.

Parameters
componentPointer to the state component to remove
virtual void DtLocalObject::upgradeFromImport ( )
virtual

Performs necessary upgrades when importing from an older scenario format.

Note
Called automatically when upgrading an object during scenario import
makVrf::DtTaskVisualizationStateComponent* DtLocalObject::lineTaskVisualization ( const DtString visualName,
const DtString component 
)
makVrf::DtTaskVisualizationStateComponent* DtLocalObject::pointTaskVisualization ( const DtString visualName,
const DtString component 
)
makVrf::DtTaskVisualizationStateComponent* DtLocalObject::areaTaskVisualization ( const DtString visualName,
const DtString component 
)
makVrf::DtTaskVisualizationStateComponent* DtLocalObject::textTaskVisualization ( const DtString visualName,
const DtString component 
)
void DtLocalObject::removeTaskVisualization ( makVrf::DtTaskVisualizationStateComponent )
makVrf::DtLaserDesignatorStateComponent* DtLocalObject::addLaserDesignator ( )
void DtLocalObject::removeLaserDesignator ( makVrf::DtLaserDesignatorStateComponent )
makVrf::DtEmitterSystemStateComponent* DtLocalObject::addEmitterSystem ( )
void DtLocalObject::removeEmitterSystem ( makVrf::DtEmitterSystemStateComponent )
makVrf::DtActiveSonarStateComponent* DtLocalObject::addActiveSonarSystem ( )
void DtLocalObject::removeActiveSonarSystem ( makVrf::DtActiveSonarStateComponent )
makVrf::DtRadioTransmitterStateComponent* DtLocalObject::addRadioTransmitter ( )
void DtLocalObject::removeRadioTransmitter ( makVrf::DtRadioTransmitterStateComponent )
makVrf::DtNavAidRadioTransmitterStateComponent* DtLocalObject::addNavAidRadioTransmitter ( )
void DtLocalObject::removeNavAidRadioTransmitter ( makVrf::DtNavAidRadioTransmitterStateComponent )
makVrf::DtRadioReceiverStateComponent* DtLocalObject::addRadioReceiver ( )
void DtLocalObject::removeRadioReceiver ( makVrf::DtRadioReceiverStateComponent )
makVrf::DtIffStateComponent* DtLocalObject::getOrCreateIffSystem ( )

Retrieves or creates the IFF (Identification Friend or Foe) system component.

Returns
Pointer to the IFF state component
Note
Only one IFF system is available per object, so this method either creates a new component or returns the existing one
void DtLocalObject::removeIffSystem ( )
makVrf::DtUnderwaterAcousticsStateComponent* DtLocalObject::getOrCreateUnderwaterAcousticsSystem ( bool  isRemote = false)

Retrieves or creates the Underwater Acoustics system component.

Parameters
isRemoteFlag indicating if the component should be marked as remote
Returns
Pointer to the Underwater Acoustics state component
Note
Only one Underwater Acoustics system is available per object, so this method either creates a new component or returns the existing one
void DtLocalObject::removeUnderwaterAcousticsSystem ( )
virtual void DtLocalObject::setNextFrameUnderFire ( bool  b)
virtual
virtual bool DtLocalObject::nextFrameUnderFire ( ) const
virtual
virtual void DtLocalObject::setNextFrameInvulnerable ( bool  )
virtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameInvulnerable ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameUndetectable ( bool  )
virtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameUndetectable ( ) const
virtual

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameHalfLengthWidthHeight ( double  length,
double  width,
double  height 
)
virtual

Called before/after object reinitialization.

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameObjectGeometry ( const makVrf::DtVrfObjectGeometry )
virtual

Called before/after object reinitialization.

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameBoundingGeometryType ( DtSimBoundingGeometry::DtSimBoundingGeometryType  type)
virtual

Called before/after object reinitialization.

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameBoundingVolume ( const Dt3dBoundingVolume &  b)
virtual

Called before/after object reinitialization.

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameHasPlan ( bool  )
virtual

Called before/after object reinitialization.

virtual bool DtLocalObject::nextFrameHasPlan ( ) const
virtual

Called before/after object reinitialization.

virtual void DtLocalObject::setNextFrameExecutingPlan ( bool  )
virtual

Called before/after object reinitialization.

virtual bool DtLocalObject::nextFrameExecutingPlan ( ) const
virtual

Called before/after object reinitialization.

virtual void DtLocalObject::setNextFrameOccupantsHidden ( int  )
virtual

This value has three possible settings: 1 - Show occupants 2 - Hide occupants 3 - Use display default of the receiving GUI.

virtual bool DtLocalObject::nextFrameOccupantsHidden ( ) const
virtual

Called before/after object reinitialization.

virtual std::map<DtString, DtString> DtLocalObject::nextFrameExtendedDataMap ( ) const
virtual

Retrieves the extended data map for the next frame.

Returns
Map of string key-value pairs containing extended data
Note
Returns an empty map by default if no extended data has been set
virtual std::map<int, DtString> DtLocalObject::nextFrameExtendedLabels ( ) const
virtual

Retrieves the extended labels map for the next frame.

Returns
Map of integer-indexed labels
Note
Returns an empty map by default if no extended labels have been set
virtual bool DtLocalObject::nextFrameIsOnTopOf ( const DtSimObject o,
bool  checkSupportPoints = false 
) const
virtual

Called before/after object reinitialization.

virtual bool DtLocalObject::nextFrameIsOnTopOf ( const DtSimObject o,
double  d,
bool  checkSupportPoints = false 
) const
virtual

Called before/after object reinitialization.

DtLocalObjectDecorator* DtLocalObject::getOrCreateDecorator ( const std::string &  Decorator)

Gets or creates a decorator based on the specified name.

Parameters
DecoratorThe name of the decorator to retrieve/create
Returns
Pointer to the requested decorator
Warning
DO NOT delete the returned pointer. This class owns the decorator.
void DtLocalObject::setLocationComplete ( )

Signals completion of a location change request.

Note
Call this method in response to a setLocation request being complete, which will emit the signal_setLocationComplete signal
virtual void DtLocalObject::setNextFrameStateProperties ( const DtRwProperties )
virtual

Sets the entire list of the next frame external state properties.

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameFuelLevelsFrozen ( ) const
virtual

Determines if fuel levels are frozen for the next frame.

Returns
True if fuel levels are frozen, false otherwise
Note
Default value is false

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameMunitionLevelsFrozen ( ) const
virtual

Determines if munition levels are frozen for the next frame.

Returns
True if munition levels are frozen, false otherwise
Note
Default value is false

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setSimulationCapable ( bool  )
virtual

Sets whether this object is simulation capable.

Parameters
capableTrue to make the object simulation capable, false otherwise
Note
This is a single flag that affects only the current execution frame
bool DtLocalObject::simulationCapable ( ) const

Called before/after object reinitialization.

virtual void DtLocalObject::setNextFrameBlockParachute ( bool  )
virtual

Controls whether a parachute is blocked from opening.

Parameters
blockedTrue to block parachute opening, false to allow it
Note
This affects parachute deployment functionality

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::nextFrameBlockParachute ( ) const
virtual

Called before/after object reinitialization.

Reimplemented in DtRemoteAttachedObject.

virtual void DtLocalObject::setNextFrameOnTerrainSurface ( bool  b)
virtual

Sets whether the object should be considered on the terrain surface.

Parameters
bTrue if the object is on the terrain surface, false otherwise
Note
When true, terrain intersection calculations may be skipped. If you position an object above the terrain surface but do not explicitly set this to false, some operations (like fidelity of intersection) will still treat the object as being on the terrain
virtual bool DtLocalObject::nextFrameOnTerrainSurface ( ) const
virtual

Called before/after object reinitialization.

virtual void DtLocalObject::setOperationInProgress ( int  ,
bool   
)
virtual

Object initialization and creation routines.

Creates state that is internal to this object

Parameters
parameterEntryParameters used for internal state creation
Returns
True if creation was successful, false otherwise
Warning
This state is not thread safe and should not be accessed by any object other than this object in a single thread
virtual bool DtLocalObject::operationInProgress ( int  ) const
virtual

Object initialization and creation routines.

Creates state that is internal to this object

Parameters
parameterEntryParameters used for internal state creation
Returns
True if creation was successful, false otherwise
Warning
This state is not thread safe and should not be accessed by any object other than this object in a single thread
virtual void DtLocalObject::clearOperationsInProgress ( )
virtual

Object initialization and creation routines.

Creates state that is internal to this object

Parameters
parameterEntryParameters used for internal state creation
Returns
True if creation was successful, false otherwise
Warning
This state is not thread safe and should not be accessed by any object other than this object in a single thread
virtual bool DtLocalObject::createInternalState ( const DtVrfObjectParameters parameterEntry)
virtual

Object initialization and creation routines.

Creates state that is internal to this object

Parameters
parameterEntryParameters used for internal state creation
Returns
True if creation was successful, false otherwise
Warning
This state is not thread safe and should not be accessed by any object other than this object in a single thread
virtual bool DtLocalObject::setupSubComponentTypes ( )
virtual

Sets up the mySubComponentTypes member with the appropriate component types.

Returns
True if setup was successful, false otherwise
Note
Uses component types gathered from myParameters, which must be set up before this call is made
virtual bool DtLocalObject::init ( )
virtual

Initializes the object after creation.

Returns
True if initialization was successful, false otherwise
Note
Must be called after create() and before any other member functions are called. When initializing for reinitialization, this will skip the initialization of components not deleted during reinitialization
virtual bool DtLocalObject::create ( )
virtual

Performs virtual construction of the object.

Returns
True if creation was successful, false otherwise
Note
Must be called before any other member functions are called. By default, this creates the network interface. You can disable this by setting createNetworkInterface to false if you want to ensure all data is present in the object before it is on the network. When ready, call createNetworkInterface.
static DtLocalObjectCreatorFcn DtLocalObject::setLocalObjectCreatorFunction ( DtLocalObjectCreatorFcn  )
static

Install own creator to create a subclass of the DtLocalObject to add functionality. Note that the functionality should be considered thread safe for any addition. If you are adding non thread-safe code unpredictable results may occur.

Sets new creator and returns old. Set to null creator to create default object

static DtLocalObjectCreatorFcn DtLocalObject::localObjectCreatorFunction ( )
static

Install own creator to create a subclass of the DtLocalObject to add functionality. Note that the functionality should be considered thread safe for any addition. If you are adding non thread-safe code unpredictable results may occur.

Sets new creator and returns old. Set to null creator to create default object

static DtLocalObject* DtLocalObject::create ( DtSimulationServices ,
const DtVrfLocalObjectCreateInformation  
)
static

Install own creator to create a subclass of the DtLocalObject to add functionality. Note that the functionality should be considered thread safe for any addition. If you are adding non thread-safe code unpredictable results may occur.

Sets new creator and returns old. Set to null creator to create default object

static DtLocalObject* DtLocalObject::createAndInit ( DtSimulationServices ,
const DtVrfLocalObjectCreateInformation  
)
static

Creates and initializes a new object in a single call.

Parameters
servicesPointer to simulation services
createInfoCreation information for the new object
Returns
Pointer to the newly created and initialized object
Note
This is a shorthand for calling create() followed by init() on the new object
static void DtLocalObject::readDRThresholdSettingsCallback ( const DtSettingsObject settings,
void *  usr 
)
static
virtual void DtLocalObject::processReadDRThresholdSettings ( const DtSettingsObject settings)
virtual
bool DtLocalObject::isGlobalPlan ( ) const

Determines if this object is a global plan object.

Returns
True if this is a global plan object, false otherwise
bool DtLocalObject::isSyncMatrix ( ) const

Determines if this object is a synchronization matrix object.

Returns
True if this is a synchronization matrix object, false otherwise
virtual int DtLocalObject::publicationFlag ( ) const
virtual

Gets the publication flag determining network publishing behavior.

Returns
The publication flag value
Note
See DtStateData for the available flag values
virtual bool DtLocalObject::isCapableOfTask ( std::string  taskName)
virtual

Determines if this object is capable of executing a specific task.

Parameters
taskNameThe name of the task to check
Returns
True if the task is registered with the object's task manager, false otherwise
virtual bool DtLocalObject::convertToRemoteObject ( DtString error)
virtual

Converts this object from a local to a remote object.

Parameters
errorReference to string that will receive error message if conversion fails
Returns
True if conversion was successful, false otherwise

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::convertToLocalObject ( DtString error,
const std::string &  archiveState 
)
virtual

Converts this object from a remote to a local object.

Parameters
errorReference to string that will receive error message if conversion fails
archiveStateSerialized state information to restore
Returns
True if conversion was successful, false otherwise
virtual bool DtLocalObject::prepareForHandoff ( )
virtual

Prepares this object for handoff to another simulation.

Returns
True if preparations were successful, false otherwise
virtual std::string DtLocalObject::archiveState ( ) const
virtual

Archives the current state of this object.

Returns
String containing the serialized state
Note
Used during handoff to preserve object state
const DtSimResourceManager& DtLocalObject::resourceManager ( ) const
DtSimResourceManager& DtLocalObject::resourceManager ( )
virtual DtVrfObjectStateRepository* DtLocalObject::internalState ( )
virtual
virtual const DtVrfObjectStateRepository* DtLocalObject::internalState ( ) const
virtual
virtual void DtLocalObject::prepareForReinitialization ( ReinitializeFlags  flags = ReinitializeDefault)
virtual
DtVrfObjectSubComponentTypes* DtLocalObject::vrfSubComponentTypes ( ) const

Gets the VRF-specific sub-component types.

Returns
Pointer to VRF sub-component types
Note
For use in virtual construction. Casts mySubComponentTypes to the VRF-specific derived type.
virtual void DtLocalObject::tick ( )
virtual

Performs the per-frame update of this object.

Updates the object's organization manager, task manager, and component manager, then calls the base class tick. Also invokes VRF object predicate callbacks.

Note
This method calls startTick(), tickComponents(), and endTick() in sequence
virtual void DtLocalObject::startTick ( )
protectedvirtual
virtual void DtLocalObject::tickComponents ( )
protectedvirtual
virtual void DtLocalObject::endTick ( )
protectedvirtual
virtual int DtLocalObject::scenarioRunId ( ) const
virtual

Gets the ID of the currently running scenario.

Returns
The scenario run ID, or -1 if not set
Note
Retrieved from the simulation manager
virtual bool DtLocalObject::checkIfMoveOntoEmbarked ( const DtVector &  localPosition,
const DtSimObject *&  hit,
const std::list< DtUUID > &  additionalIgnore = std::list< DtUUID >() 
)
virtual

Checks if embarkation is possible at the specified location.

Parameters
localPositionThe position to check for embarkation
hit[out] Reference to store the intersected object
additionalIgnoreOptional list of objects to ignore during the check
Returns
True if embarkation is possible, false otherwise
Note
Checks if there are any entities at the given location that can be embarked upon, and if they are intersected by this object
virtual bool DtLocalObject::checkAndDisembarkIfEmbarked ( const DtVector &  localPosition)
virtual

Checks terrain conditions and disembarks if appropriate.

Parameters
localPositionThe position to check for disembarkation
Returns
True if disembarkation occurred, false otherwise
Note
If the entity is embarked and there is no terrain hit on the parent, this will disembark the entity. Only performs checks if the entity is already embarked.
virtual bool DtLocalObject::lowFidelityDisembarkHitCheck ( const DtVector &  localPosition) const
virtual

Performs a low-fidelity terrain hit check for disembarkation.

Parameters
localPositionThe position to check in local coordinates
Returns
True if terrain hit found for disembarkation, false otherwise
virtual bool DtLocalObject::highFidelityDisembarkHitCheck ( const DtVector &  localPosition) const
virtual

Performs a high-fidelity terrain hit check for disembarkation.

Parameters
localPositionThe position to check in local coordinates
Returns
True if detailed terrain hit found for disembarkation, false otherwise
virtual int DtLocalObject::nextEmitterSystemId ( )
virtual

Generates a unique ID for a new emitter system.

Returns
Unique identifier for a new emitter system
virtual DtVrfObjectCommunicationInterface* DtLocalObject::communicationInterface ( )
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual const DtVrfObjectCommunicationInterface* DtLocalObject::communicationInterface ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtVrfObjectTerrainPreloadManager* DtLocalObject::terrainPreloadManager ( )
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtSimRadio* DtLocalObject::radio ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtSimTaskManager* DtLocalObject::taskManager ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtScriptInterfaceHandler* DtLocalObject::scriptInterfaceHandler ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtVrfObjectPlanManager* DtLocalObject::vrfObjectPlanManager ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtSimComponentManager* DtLocalObject::componentManager ( )
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual const DtSimComponentManager* DtLocalObject::componentManager ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual DtSetDataManager* DtLocalObject::setDataManager ( )
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
virtual const DtSetDataManager* DtLocalObject::setDataManager ( ) const
virtual

Gets the set data manager for this object.

Returns
Pointer to the set data manager
Note
Any part of the object wishing notification of a set data request should register with this manager instead of registering directly with the radio. Any set data request can be invoked on the entity by passing it into this manager.
bool DtLocalObject::initialized ( ) const
inline
DtVrfCallbackQueue::CallbackInterface::Ptr DtLocalObject::parallelContainer ( )
inline
virtual void DtLocalObject::cleanupItemsNeededForHandoff ( )
virtual

Ownership transfer Cleans up components and state needed before handoff.

Note
Called during the handoff process to prepare the object
virtual bool DtLocalObject::recreateItemsNeededFromHandoff ( )
virtual

Recreates components and state after a handoff.

Returns
True if recreation was successful, false otherwise
Note
Called during the handoff process to rebuild the object state
virtual void DtLocalObject::cleanupItemsNeededForReinitialize ( )
virtual

Cleans up components and state before reinitialization.

Note
Called during the reinitialization process to prepare the object
virtual bool DtLocalObject::reinitialize ( )
virtual

Reinitializes the object from stored parameters.

Returns
True if reinitialization was successful, false otherwise
Note
Preserves all information except system PSR and state properties, then restores from parameters and saved data from the state repository
static void DtLocalObject::logToFileCallback ( const DtVrfObjectMessage msg,
void *  usr 
)
staticprotected

Extensions to lua interface for this object only.

Add a lua script extension for this entity only. The creator function passed in will be called every time a lua environment is created for this entity.

virtual void DtLocalObject::processLogToFile ( const DtVrfObjectMessage msg)
protectedvirtual

Extensions to lua interface for this object only.

Add a lua script extension for this entity only. The creator function passed in will be called every time a lua environment is created for this entity.

static void DtLocalObject::stopLoggingToFileCallback ( const DtVrfObjectMessage msg,
void *  usr 
)
staticprotected

Extensions to lua interface for this object only.

Add a lua script extension for this entity only. The creator function passed in will be called every time a lua environment is created for this entity.

virtual void DtLocalObject::processStopLoggingToFile ( const DtVrfObjectMessage msg)
protectedvirtual

Extensions to lua interface for this object only.

Add a lua script extension for this entity only. The creator function passed in will be called every time a lua environment is created for this entity.

virtual void DtLocalObject::createNavigationDecorator ( )
overrideprotectedvirtual

Reimplemented from DtSimObject.

virtual void DtLocalObject::addScriptExtension ( DtLuaScriptInterfaceExtension::CreatorFcn  extension,
void *  usr 
)
virtual

Extensions to lua interface for this object only.

Add a lua script extension for this entity only. The creator function passed in will be called every time a lua environment is created for this entity.

virtual void DtLocalObject::removeScriptExtension ( DtLuaScriptInterfaceExtension::CreatorFcn  extension,
void *  usr 
)
virtual

Remove a lua script extension that was previously added.

virtual const ScriptInterfaceExtensions& DtLocalObject::scriptExtensions ( ) const
virtual

Gets the current set of script extensions.

Returns
Reference to the collection of script extensions
virtual void DtLocalObject::setupFromMessageContent ( const DtIfModifyVrfObject ifModVrfObject)
virtual

Sets up object properties based on interface message content.

Parameters
ifModVrfObjectMessage containing modification data

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::validNameLength ( const DtString name) const
virtual

Validates that an object name has an acceptable length.

Parameters
nameThe name to validate
Returns
True if the name length is valid, false otherwise
static bool DtLocalObject::shouldArchiveExtendedAttribute ( const DtString s)
static
static void DtLocalObject::doNotArchiveAttribute ( const DtString s,
bool  b 
)
static
virtual void DtLocalObject::sendVrfObjectCreated ( unsigned long  requestId = 0,
bool  requestCreated = true 
)
virtual

Create and send a DtVrfObjectCreated message about ourself. requestId is the requestId to be used in the message (request Ids are used to link a DtIfVrfCreated message to a DtCreateVrfObject message).

virtual void DtLocalObject::setIsInMovementFlux ( bool  ,
const DtVector &  proposedLocation = DtVector::zero() 
)
virtual

Set that the object is in flux for movement.

virtual void DtLocalObject::setupStateRepository ( )
protectedvirtual
virtual void DtLocalObject::internalStateInitializedFromParameters ( )
protectedvirtual
virtual bool DtLocalObject::createCommunicationsInterface ( )
protectedvirtual
Returns
The DtVrfObjectCommunicationInterface for this object. This is the central point for all processing of messages to/from this object, whether they are though a radio or though the internal communication mechanism of VR-Forces.
virtual void DtLocalObject::initializeCommunicationInterfaceCallbacks ( )
protectedvirtual
static void DtLocalObject::setOverlayLayerTaskCallback ( const DtVrfObjectMessage msg,
void *  usr 
)
staticprotected
virtual void DtLocalObject::processSetOverlayLayerTask ( const DtVrfObjectMessage msg)
protectedvirtual
virtual bool DtLocalObject::createScriptInterfaceHandler ( )
protectedvirtual
virtual bool DtLocalObject::createComponentManager ( )
protectedvirtual
virtual bool DtLocalObject::initializeComponentManager ( )
protectedvirtual

Initialize component manager that has been created. Only call once!

virtual bool DtLocalObject::createRadio ( )
protectedvirtual
virtual bool DtLocalObject::createVrfObjectPlanManager ( )
protectedvirtual
virtual bool DtLocalObject::createSetDataManager ( )
protectedvirtual
virtual void DtLocalObject::tickDecorators ( )
protectedvirtual
void DtLocalObject::createRemotelyControlledLocalObject ( )
protected

Non virtual as this is called from the constructor.

virtual void DtLocalObject::completeSetup ( )
overrideprotectedvirtual

Reimplemented from DtSimObject.

virtual bool DtLocalObject::createTaskManager ( )
protectedvirtual
virtual void DtLocalObject::createCommunicationsInterface ( const DtRadioDescriptorList descList)
protectedvirtual

Allows an external process to invoke creation of a communications interface, if myCommunicationInterface is NULL, and pass a radio descriptor list.

virtual void DtLocalObject::updateEntityHasTarget ( )
protectedvirtual

If this is a platform (non environmental or unit), will check to see if this entity has a target and update the DtEntityHasTarget keyword appropriately.

virtual void DtLocalObject::setUUID ( const DtUUID )
overrideprotectedvirtual

Protected as this will not be used in the future – only used as part of DtVrfObject.

Reimplemented from DtSimObject.

virtual void DtLocalObject::convertedToRemote ( )
protectedvirtual
virtual std::map<DtString, DtString> DtLocalObject::unarchivedData ( )
protectedvirtual

Extended data that is not archived that is currently in the extended data list.

virtual void DtLocalObject::clearDecorators ( )
overrideprotectedvirtual

This code will keep track of DtSimObject decorator only. The DtLocalObject will be able to use this decorator, however, it will also keep a "next frame" decorator for the decorator that only works on DtLocalObject.

Reimplemented from DtSimObject.

virtual void DtLocalObject::usingParameterSource ( const DtString )
overrideprotectedvirtual

Called when the parameter is set up, this is the source it is using.

Reimplemented from DtSimObject.

virtual void DtLocalObject::setupVrfObjectParameters ( )
overrideprotectedvirtual

Will use next frame rather than current frame data.

Reimplemented from DtSimObject.

void DtLocalObject::cacheNextFrameComponents ( )
protected
void DtLocalObject::clearNextFrameCachedComponents ( )
protected
virtual void DtLocalObject::hostChanged ( const DtUUID oldHost,
const DtUUID newHost 
)
overrideprotectedvirtual

Reimplemented from DtSimObject.

virtual void DtLocalObject::isClutterChanged ( )
overrideprotectedvirtual

Reimplemented from makVrf::DtStateDataWrapper.

virtual void DtLocalObject::setupExtendedDataFromParameterData ( )
protectedvirtual

Reimplemented in DtRemoteAttachedObject.

virtual bool DtLocalObject::canBePlaced ( ) const
protectedvirtual

Returns true if the object can be placed. Defaults to true unless overridden in a subclass.

Reimplemented in DtRemoteAttachedObject.

DtLocalObject& DtLocalObject::operator= ( const DtLocalObject orig)
protected

assignment operator

VRF4API_METHOD DtVrfObjectStateRepository* DtLocalObject::vrfState ( )
inline

These are backwards compatible methods that can be used if you define ALLOW_VRF4API in your header file Retrieves the internal state repository.

Returns
Pointer to the VRF object state repository
Note
Backward compatibility method for VRF4 API
VRF4API_METHOD const DtVrfObjectStateRepository* DtLocalObject::vrfState ( ) const
inline

Retrieves the internal state repository (const version)

Returns
Constant pointer to the VRF object state repository
Note
Backward compatibility method for VRF4 API
VRF4API_METHOD void DtLocalObject::setObjectIdentifier ( const DtEntityIdentifier &  id)
inline

Sets the entity identifier.

Parameters
idThe entity identifier to set
Note
Backward compatibility method for VRF4 API
VRF4API_METHOD void DtLocalObject::place ( const DtReal  heading,
bool dataAvailable = 0,
bool  requireAllData = false 
)

Places the object with the specified heading.

Parameters
headingThe heading in radians
dataAvailableOptional pointer to receive availability status
requireAllDataWhether to require all data to be available
Note
Backward compatibility method for VRF4 API
VRF4API_METHOD void DtLocalObject::place ( const DtVector &  heading,
bool dataAvailable = 0,
bool  requireAllData = false 
)

Places the object with the specified direction vector.

Parameters
headingThe heading direction vector
dataAvailableOptional pointer to receive availability status
requireAllDataWhether to require all data to be available
Note
Backward compatibility method for VRF4 API
VRF4API_METHOD bool DtLocalObject::isVrfSimulated ( ) const
inline

Determines if this object is being simulated by VRF.

Returns
True if being simulated by VRF, false otherwise
Note
Backward compatibility method for VRF4 API
VRF4API_METHOD void DtLocalObject::invokeSetLocationCompleteCallbacks ( )
inline

Invokes callbacks when location setting is complete.

Note
Backward compatibility method for VRF4 API that calls setLocationComplete()

Friends And Related Function Documentation

friend class DtVrfObjectStateRepository
friend

Member Data Documentation

boost::signals2::signal<void ()> DtLocalObject::signal_preObjectReinitialize

Called before/after object reinitialization.

boost::signals2::signal<void (bool success)> DtLocalObject::signal_postObjectReinitialize

Called before/after object reinitialization.

boost::signals2::signal<void ()> DtLocalObject::signal_resourceChangedBySet

Notifies listeners that resources have changed.

Note
Called from the set controller when resources are changed by a set command. Call this if resources are changed elsewhere when something needs to be notified that resources have changed (for example, indirect fire controllers)
boost::signals2::signal<void ()> DtLocalObject::signal_preUpgradeFromImport

Signal sent when upgrading from import. This will be called before any internal routines are called.

boost::signals2::signal<void ()> DtLocalObject::signal_postUpgradeFromImport

Signal sent when upgrading from import. This will be called after any internal routines are called.

boost::signals2::signal<void ()> DtLocalObject::signal_objectInitialized

Signal sent at the very end of the init() method.

boost::signals2::signal<void ()> DtLocalObject::signal_objectRestored

Signal sent after the object has been restored from the stream.

boost::signals2::signal<void (DtLocalObject*)> DtLocalObject::signal_objectModifiedViaMessage

Signal sent when this object is modified via a message.

boost::signals2::signal<void (DtLocalObject*)> DtLocalObject::signal_newSensorContact

Signal made available from this object to be used when a new sensor contact is made available for this object.

boost::signals2::signal<void (DtLocalObject*)> DtLocalObject::signal_navigationAreaChanged

Signal made available from this object to be used when the navigation area this object is in has changed.

boost::signals2::signal<void (DtLocalObject*)> DtLocalObject::signal_setLocationComplete

Signal sent when the location has been changed by an interface content message.

boost::signals2::signal<void ()> DtLocalObject::signal_restored

Signal emitted when the object has been restored.

boost::signals2::signal<void (const DtLocalObject*, ChangeFlag)> DtLocalObject::signal_objectDataChanged
mutable

Signal sent when certain data has changed in this class from being set by the API, not from the network.

boost::signals2::signal<void(const DtLocalObject*)> DtLocalObject::signal_localObjectAboutToBeDeleted

Signal sent when a local object is about to be deleted.

boost::signals2::signal<void (DtLocalObject*, DtVrfObjectHandoffData::HandoffFlag)> DtLocalObject::signal_handoffStep

Signal sent with object handoff flags for this object given the handoff state.

boost::signals2::signal<void (DtLocalObject*, DtVrfObjectHandoffData&)> DtLocalObject::signal_prepareForHandoff
mutable

Signal sent when preparing for object handoff.

Note
Handlers can set the handoffFlag to Abort if this object should not be handed off
boost::signals2::signal<void (DtLocalObject*)> DtLocalObject::signal_postInitFromParams

Signal sent right after the internal state is initialized from parameters.

DtVrfObjectStateRepository* DtLocalObject::myInternalState
protected
DtVrfObjectSubComponentTypes* DtLocalObject::mySubComponentTypes
protected
makVrf::DtExternalNextFrameState* DtLocalObject::myExternalNextFrameState
protected
DtVrfObjectCommunicationInterface* DtLocalObject::myCommunicationInterface
protected
DtVrfObjectTerrainPreloadManager* DtLocalObject::myTerrainPreloadManager
protected
DtSimRadio* DtLocalObject::myRadio
protected
DtSimTaskManager* DtLocalObject::myTaskManager
protected
DtScriptInterfaceHandler* DtLocalObject::myScriptInterfaceHandler
protected
DtSimComponentManager* DtLocalObject::myComponentManager
protected
DtVrfObjectPlanManager* DtLocalObject::myVrfObjectPlanManager
protected
DtSetDataManager* DtLocalObject::mySetDataManager
protected
bool DtLocalObject::myCreatedStateData
protected
LocalObjectDecorators DtLocalObject::myLocalObjectDecorators
protected
boost::signals2::scoped_connection DtLocalObject::myConvertedToRemoteConnection
protected
DtLocalObjectCreatorFcn DtLocalObject::theLocalObjectCreatorFunction
staticprotected
DtVrfLocalObjectCreateInformation* DtLocalObject::myLocalObjectCreateInformation
protected

Information used to originally create this object.

bool DtLocalObject::myInitializing
protected
bool DtLocalObject::myInitialized
protected
int DtLocalObject::myNextEmitterSystemId
protected
std::set<DtString> DtLocalObject::theDoNotArchiveAttributes
staticprotected
DtAppearanceLocalObjectFacade* DtLocalObject::myAppearanceLocalObjectFacade
protected
ScriptInterfaceExtensions DtLocalObject::myScriptInterfaceExtensions
protected
bool DtLocalObject::myConvertingToLocal
protected

Will be true if this object is in the process of converting from remote to local.

bool DtLocalObject::myConvertingToRemote
protected

Will be true if this object is in the process of converting from local to remote.

bool DtLocalObject::mySimulationCapable
protected

Whether or not this object is capable of simulating. Default is true.

bool DtLocalObject::myHasTarget
protected
bool DtLocalObject::myControllersTicked
protected
bool DtLocalObject::mySkipNextComponentTick
protected
bool DtLocalObject::mySignalLocationComplete
protected
bool DtLocalObject::myIsEnvironmental = false
protected
DtRwProperties* DtLocalObject::myDefaultStateProperties
mutableprotected

Default state properties storage.

Note
Only set if there is no state properties state component
makVrf::DtLocationStateComponent* DtLocalObject::myNextFrameLocationStateComponent
protected

Component that stores location information for the next frame.

makVrf::DtSimulatedObjectStateComponent* DtLocalObject::myNextFrameSimulatedObjectStateComponent
protected

Component that stores simulation state for the next frame.

makVrf::DtVrfGeometryStateComponent* DtLocalObject::myNextFrameVrfGeometryStateComponent
protected

Component that stores geometry information for the next frame.

makVrf::DtVrfStateComponent* DtLocalObject::myNextFrameVrfStateComponent
protected

Component that stores VRF-specific state for the next frame.

makVrf::DtStatePropertiesStateComponent* DtLocalObject::myNextFrameStatePropertiesStateComponent
protected

Component that stores properties state for the next frame.

const makVrf::DtStatePropertiesStateComponent* DtLocalObject::myCurrentFrameStatePropertiesStateComponent
protected

Component that stores properties state for the current frame.

DtSimObjectReference DtLocalObject::myNextFrameSimObjectEmbarkedOn
protected

Reference to the object this object will be embarked on in the next frame.

DtMovementLocalObjectFacade* DtLocalObject::myMovementLocalObjectFacade
protected

Facade for managing movement-related operations.

OperationsInProgressCount DtLocalObject::myOperationsInProgressCount
protected

Map tracking the count of various operations in progress.

int DtLocalObject::myFluxIndex = -1
protected

Index in the update structure for pending database operations.

Note
Used for operations like movement to track updates in the structure. When data becomes available, this index helps locate and remove the entry. Flux index for tracking database operations, -1 when not in flux
DtVrfCallbackQueue::CallbackInterface::Ptr DtLocalObject::myParallelContainer
protected

Container for managing parallel callbacks.

DtPlan* DtLocalObject::myReinitializePlan = nullptr
protected

Plan stored during reinitialization to preserve it.


The documentation for this class was generated from the following file:

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)