![]() |
VR-Forces 4.1 Class Documentation
|
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application. More...

Public Types | |
| typedef std::list < DtLuaScriptInterfaceExtension::CreatorUserPair > | ScriptInterfaceExtensions |
| typedef std::pair < DtVrfObjectCallbackFunction, void * > | DtVrfObjectCallbackDataPair |
| Definitions of container types used in the postInitFromParameters callback mechansim. | |
| typedef std::pair< DtVrfObject *, DtVrfObjectCallbackDataPair > | DtVrfObjectCallbackDataPair2 |
| Definitions of container types used in the postInitFromParameters callback mechansim. | |
Public Types inherited from DtReaderWriter | |
| typedef std::vector < DtSymbolString > | aliasContainer |
| typedef std::vector < DtSymbolString >::iterator | aliasIter |
| typedef std::vector < DtSymbolString > ::const_iterator | aliasConstIter |
| typedef std::pair < DtSymbolString, DtString > | DtVariableNameType |
Public Member Functions | |
| DtVrfObject (const DtObjectType &objectType, DtVrfObjectManager *vrfObjectManager, bool createLocalObject=true, bool publishLocalObject=true, const DtEntityIdentifier &objectIdentifier=DtEntityIdentifier::nullId(), const DtGlobalObjectDesignator *globalId=0, DtReflectedObject *reflectedObject=0, const DtString &objectName=DtString::nullString(), const DtString &objectLabel=DtString::nullString(), DtForceType forceType=DtForceOther, const DtList *vertices=0, const DtTaitBryan *orientation=0, bool projection=false, bool closedFigure=false, const DtAppearance &appearance=DtAppearance::nullAppearance(), const DtString &readerWriterName="vrf-object", DtReaderWriterRegistry *parentRegistry=0) | |
| virtual | ~DtVrfObject () |
| destructor | |
| virtual bool | create () |
| Virtual construction - must be called before any other member functions are called. | |
| virtual void | createCommunicationsInterface () |
| Allows an external process to invoke creation of a communications interface, if myCommunicationInterface is NULL. | |
| virtual void | createCommunicationsInterface (const DtRadioDescriptorList &descList) |
| Allows an external process to invoke creation of a communications interface, if myCommunicationInterface is NULL, and pass a radio descriptor list. | |
| virtual void | createSetDataManager () |
| Allows an external process to invoke creation of a DtSetDataManager, if mySetDataManager is NULL. | |
| virtual bool | init () |
| Initialization - must be called after create() and before any other member functions are called. | |
| virtual void | tick () |
| Called by create(). | |
| virtual bool | createRepository (DtVrfObjectParameters *parameterEntry) |
| Override createRepository() to check if repository created in base class version is a DtSimVrfObjectBaseStateRepository (or a derived type). | |
| virtual bool | createTaskManager () |
| virtual bool | createComponentManager () |
| virtual bool | createVrfObjectPlanManager () |
| Creates myVrfObjectPlanManager based on the type specified in mySubComponentTypes. | |
| virtual bool | createRadio () |
| virtual const DtSimManager * | simManager () const |
| Get a pointer to our sim manager. | |
| virtual DtSimManager * | simManager () |
| virtual DtSimTaskManager * | taskManager () const |
| Get pointers to our various types of subcomponents. | |
| virtual DtSimComponentManager * | componentManager () const |
| virtual DtVrfObjectPlanManager * | vrfObjectPlanManager () const |
| virtual DtSimBaseRadio * | radio () const |
| virtual DtVrfObjectStateRepository * | vrfState () const |
| virtual DtExtent | extent () const |
| Returns the extent of the vrfObject, if the vrfObject has one. | |
| virtual void | expandExtent (DtExtent &extent) const |
| If the vrfObject has geometry, and thus an extent, then this function expands the specified extent to include the vrfObjects extent. | |
| virtual void | sendVrfObjectCreated (unsigned long requestId=0) |
| Create and send a DtVrfObjectCreated message about ourself. | |
| virtual void | setupFromMessageContent (DtIfModifyVrfObject *ifModVrfObject) |
| Setup self from interface messages. | |
| virtual bool | isVrfSimulatedObject () |
| Returns true if object is being simulated by a VR-Forces-simulated object, false if not. | |
| virtual void | setIsVrfSimulatedObject (bool b) |
| virtual bool | isSimulatingComponents () const |
| returns true if object is simulating components VR-Forces components can be attached to non- VR-Forces entities. | |
| virtual void | putSelf (FILE *fp, int indentLevel=0, bool writeUnspecified=true, const DtFilename &path=DtReaderWriter::appPath()) |
| Override to write out <use-default> string for unspecified parameters. | |
| virtual void | getSelf (DtlObjPtr args, const DtFilename &searchPath, const DtVariableBindingsList &variableBindings) |
| Override to do additional setup required when reading older oob, ovl files. | |
| virtual bool | setObjectName (const DtString &name, bool rename=true) |
| Override to inform the vrfObjectManager when the name changes. | |
| virtual void | addNameAlias (const DtString &name) |
| Adds a new string which can be used to reference this object by name. | |
| virtual void | unregisterAliases () |
| Unregisters all aliases with object manager and removes the aliases from the local alias list. | |
| virtual void | addVrfObjectChangedCallback (DtVrfObjectCallbackFunction function, void *userData) |
| WARNING: These methods are obsolete but have been retained for backward compatibility. | |
| virtual void | removeVrfObjectChangedCallback (DtVrfObjectCallbackFunction function, void *userData) |
| virtual void | addVrfObjectPredicateCallback (DtVrfObjectPredicateCallbackFunction function, const DtVrfObjectPredicate &predicate, DtTime evaluationPeriod=0, void *userData=0) |
| Add/remove a callback function to be invoked when the DtVrfObject predicate object associated with it returns true(). | |
| virtual void | removeVrfObjectPredicateCallback (DtVrfObjectPredicateCallbackFunction function, const DtVrfObjectPredicate &predicate, DtTime evaluationPeriod=0, void *userData=0) |
| virtual int | predicateCallbackCount () const |
| For testing. | |
| virtual void | invokeVrfObjectPredicateCallbacks () |
| Called each tick. | |
| virtual void | setCoordinateSystem (const Coordinate_System *coordinateSystem) |
| Sets the coordinate system in mySimState (a DtVrfObjectStateRepository) and in myOvlVertices. | |
| virtual const DtVrfObjectManager * | simObjectManager () const |
| virtual DtVrfObjectManager * | simObjectManager () |
| virtual void | setSimObjectManager (DtVrfObjectManager *simObjectManager) |
| virtual bool | createNetInterface () |
| virtual void | setGlobalId (const DtGlobalObjectDesignator &id) |
| Set/get the entity's global Id. | |
| virtual const DtGlobalObjectDesignator & | globalId () const |
| virtual bool | baseSetObjectName (const DtString &name) |
| Set/get the name of the object. | |
| virtual const DtString & | objectName () const |
| virtual const DtString & | objectLabel () const |
| Set/get the label of the object. | |
| virtual void | setObjectLabel (const DtString &objectLabel) |
| virtual const DtString & | overlayParent () const |
| Set/get the overlay parent of the object. | |
| virtual void | setOverlayParent (const DtString &overlayParent) |
| virtual DtStateRepository * | netState () |
| VR-Link network state repository. | |
| virtual const DtStateRepository * | netState () const |
| virtual DtSimObjectNetInterface * | netInterface () |
| VR-Forces network interface. | |
| virtual const DtSimObjectNetInterface * | netInterface () const |
| virtual void | setNetInterface (DtSimObjectNetInterface *netInterface) |
| virtual void | setObjectIdentifier (const DtEntityIdentifier &objectId) |
| Set/get the object identifier (DIS/RPR site:host:entity). | |
| virtual const DtEntityIdentifier & | objectIdentifier () const |
| virtual bool | isLocal () const |
| Returns true if object is local (has the same simulation address as the manager), false if not. | |
| virtual DtString | type () const |
| set by factory on creation | |
| virtual DtString | objectClassType () const |
| virtual void | setObjectClassType (const DtString &objectClassType) |
| same as type() | |
| virtual void | clearVerticesChangedCallbacks () |
| Clear out vertices changed callback list. | |
| virtual void | clearRelativeVerticesChangedCallbacks () |
| Clear out relative vertices changed callback list. | |
| virtual void | clearPredicateCallbacks () |
| Clear out object predicate callback list. | |
| virtual DtSimObjectStateRepository * | simState () |
| virtual const DtSimObjectStateRepository * | simState () const |
| virtual void | setSimState (DtVrfObjectStateRepository *simState) |
| void | setEntityType (const DtEntityType &entityType) |
| const DtEntityType & | entityType () const |
| void | setDestroyed (bool destroyed) |
| bool | isDestroyed () const |
| virtual void | place (const DtVector &location, bool *dataAvailable=0, bool requireAllData=false) |
| place entity at 'location', on the ground, keeping its current heading | |
| virtual void | place (const DtReal heading, bool *dataAvailable=0, bool requireAllData=false) |
| give entity the specified 'heading', but stay at its current location | |
| virtual void | place (const DtVector &location, const DtReal heading, bool *dataAvailable=0, bool requireAllData=false) |
| place entity at specified 'location' and 'heading' on the ground | |
| const DtString & | echelonIdString () const |
| virtual DtVrfObject * | leadEntity () const |
| virtual const DtString & | firstSubordinate () const |
| virtual const DtString & | lastSubordinate () const |
| virtual const DtString & | firstHealthySubordinate () const |
| Returns first healthy subordinate if it exists, 0 if not. | |
| virtual void | echelonIdChanged () |
| virtual const DtObjectId & | objectId () const |
| virtual const DtObjectType & | objectType () const |
| virtual bool | isEmbarked () const |
| virtual bool | isEmbarkedOn (const DtString &parent) const |
| DtAttachedTerrain * | terrainAttachedTo () |
| const DtAttachedTerrain * | terrainAttachedTo () const |
| virtual const DtPhysicalWorld * | physicalWorld () const |
| virtual DtPhysicalWorld * | physicalWorld () |
| void | setAboutToBeRemoved (bool) |
| Set to true when object is about to be removed. | |
| bool | aboutToBeRemoved () const |
| virtual DtSetDataManager * | setDataManager () |
| virtual DtVrfObjectCommunicationInterface * | communicationInterface () |
| virtual DtVrfObjectTerrainPreloadManager * | terrainPreloadManager () |
| DtVrfObjectSubComponentTypes * | vrfSubComponentTypes () const |
| For use in virtual construction. | |
| virtual bool | hasPlan () const |
| virtual bool | executingPlan () const |
| virtual bool | isCurrentlyTasked () const |
| virtual DtU8 | getNextEmitterSystemId () |
| virtual void | addScriptExtension (DtLuaScriptInterfaceExtension::CreatorFcn extension, void *usr) |
| Add a lua script extension for this entity only. | |
| virtual void | removeScriptExtension (DtLuaScriptInterfaceExtension::CreatorFcn extension, void *usr) |
| Remove a lua script extension that was previously added. | |
| virtual const ScriptInterfaceExtensions & | scriptExtensions () const |
| virtual void | addVerticesChangedCallback (DtVrfObjectCallbackFunction function, void *userData) |
| Adds/removes a callback to be invoked whenever an object's local vertices change. | |
| virtual void | removeVerticesChangedCallback (DtVrfObjectCallbackFunction function, void *userData) |
| Adds/removes a callback to be invoked whenever an object's local vertices change. | |
| virtual void | addRelativeVerticesChangedCallback (DtVrfObjectCallbackFunction function, void *userData) |
| Adds/removes a callback to be invoked whenever an object's relative vertices change. | |
| virtual void | removeRelativeVerticesChangedCallback (DtVrfObjectCallbackFunction function, void *userData) |
| Adds/removes a callback to be invoked whenever an object's relative vertices change. | |
| virtual void | setPublishObject (bool publishObject) |
| Set/get flag indicating whether or not object should be published. | |
| virtual bool | publishObject () const |
| Set/get flag indicating whether or not object should be published. | |
| virtual DtOutputStream & | objectConsoleDebug () const |
| virtual DtOutputStream & | objectConsoleVerbose () const |
| virtual DtOutputStream & | objectConsoleInfo () const |
| virtual DtOutputStream & | objectConsoleWarn () const |
| virtual DtOutputStream & | objectConsoleError () const |
| virtual DtObjectConsole * | objectConsole () |
| Returns a pointer to the object console member of this object. | |
| virtual const DtObjectConsole * | objectConsole () const |
| Returns a pointer to the object console member of this object. | |
| virtual void | addPostInitFromParamsCallback (DtVrfObjectCallbackFunction fcn, void *usr) |
| Add/remove callback function to be invoked immediately following the point at which the newly created object gets initialized from its parameter entry. | |
| virtual void | removePostInitFromParamsCallback (DtVrfObjectCallbackFunction fcn, void *usr) |
| Add/remove callback function to be invoked immediately following the point at which the newly created object gets initialized from its parameter entry. | |
| virtual void | addObjectAboutToBeRemovedCallback (DtVrfObjectCallbackList::DtCallbackFunctionType fcn, void *usr) |
| Callback that is invoked when the entity is about to be removed from the simulation. | |
| virtual void | removeObjectAboutToBeRemovedCallback (DtVrfObjectCallbackList::DtCallbackFunctionType fcn, void *usr) |
| Callback that is invoked when the entity is about to be removed from the simulation. | |
| virtual void | invokeVrfObjectAboutToBeRemovedCallbacks () |
| Callback that is invoked when the entity is about to be removed from the simulation. | |
| virtual void | addSetLocationCompleteCallback (DtVrfObjectCallbackList::DtCallbackFunctionType fcn, void *usr) |
| Callback that is invoked when a set location request is completed. | |
| virtual void | removeSetLocationCompleteCallback (DtVrfObjectCallbackList::DtCallbackFunctionType fcn, void *usr) |
| Callback that is invoked when a set location request is completed. | |
| virtual void | invokeSetLocationCompleteCallbacks () |
| Callback that is invoked when a set location request is completed. | |
Public Member Functions inherited from DtReaderWriter | |
| DtReaderWriter () | |
| default constructor | |
| DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| real constructor Setting the readonly flag prevents object from writing itself to the stream. | |
| DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| copy constructor | |
| DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| const DtReaderWriter & | operator= (const DtReaderWriter &orig) |
| assignment operator | |
| virtual | ~DtReaderWriter () |
| destructor | |
| virtual void | writeSelf (FILE *fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in the registry. | |
| virtual DtSymbolString | name () const |
| Accessor for name of this readable/writable object. | |
| virtual void | addAlias (const DtSymbolString &alias) |
| Add an alias as an alternative name for this object. | |
| virtual bool | hasAlias (const DtSymbolString &alias) |
| virtual const aliasContainer & | aliases () const |
| virtual void | setReadonly (bool flag) |
| Set read-only flag. | |
| virtual bool | isReadonly () const |
| virtual bool | variableIsBound () const |
| virtual void | unbindVariable () |
| Sets the myVariableIsBound flag to false. | |
| virtual void | setName (const DtString &) |
| Set the name of the object. | |
| virtual const char * | readerWriterType () const |
| Used to supply a string type that this reader writer type is. | |
| virtual DtString | prettyPrint () const |
| Routine to return a human readable form of the reader/writer variable. | |
| virtual void | bindVariables (DtVariableBindingsList variableBindings) |
| Runs a variable binding pass on this reader writer and any of its children. | |
| virtual std::list < DtVariableNameType > | unboundVariables () const |
| bool | invalid () const |
| virtual bool | hasChild (const DtReaderWriter *p) const |
| Returns true if this variable has a child p in it's chain. | |
| virtual void | setValueSpecified (bool specified, bool recurse=false) |
| The specified flags are used for optional values. | |
| virtual bool | valueSpecified () const |
| The specified flags are used for optional values. | |
| virtual bool | isVariableReference () const |
| Specifies whether or not this reader writer is really a variable that is specified elsewhere. | |
| virtual void | setIsVariableReference (bool value) |
| virtual DtSymbolString | variableName () const |
| The variable name, if this object is a variable reference. | |
| virtual void | setVariableName (const DtSymbolString variableName) |
| The variable name, if this object is a variable reference. | |
| const DtReaderWriterRegistry & | registry () const |
| Collection of child DtReaderWriter nodes owned by this object. | |
| DtReaderWriterRegistry & | registry () |
| Collection of child DtReaderWriter nodes owned by this object. | |
Static Public Member Functions | |
| static void | addSimObjectCreatorFcn (const DtString &type, DtSimObjectCreatorFcn fcn) |
| static DtSimObjectFactory * | factory () |
| a DtSimObjectFactory is allocated by the DtSimCreator, and this pointer is set. | |
| static void | setFactory (DtSimObjectFactory *factory) |
| static void | setDefaultNotifyLevel (DtNotifyLevelType level) |
| Sets the notify level for all object consoles. | |
| static DtNotifyLevelType | defaultNotifyLevel () |
| static DtVrfObject * | creator (const DtObjectType &objectType, DtVrfObjectManager *simObjectManager, bool createLocalObject=true, bool publishLocalObject=true, const DtEntityIdentifier &objectIdentifier=DtEntityIdentifier::nullId(), const DtGlobalObjectDesignator *globalId=0, DtReflectedObject *reflectedObject=0, const DtString &objectName=DtString::nullString(), const DtString &objectLabel=DtString::nullString(), DtForceType forceType=DtForceOther, const DtList *vertices=0, const DtTaitBryan *orientation=0, bool projection=false, bool closedFigure=false, const DtAppearance &appearance=DtAppearance::nullAppearance(), const DtString &readerWriterName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) |
| Returns a newly created DtVrfObject. | |
| static DtVrfObject * | createObject (const DtObjectType &objectType, DtVrfObjectManager *vrfObjectManager, const DtString &classType, bool createLocalObject=true, bool publishLocalObject=true, const DtEntityIdentifier &objectIdentifier=DtEntityIdentifier::nullId(), const DtGlobalObjectDesignator *globalId=0, DtReflectedObject *reflectedObject=0, const DtString &objectName=DtString::nullString(), const DtString &objectLabel=DtString::nullString(), DtForceType forceType=DtForceOther, const DtList *vertices=0, const DtTaitBryan *orientation=0, bool projection=false, bool closedFigure=false, const DtAppearance &appearance=DtAppearance::nullAppearance(), const DtString &readerWriterName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) |
| Create and initialize a new sim object, using the factory. | |
| static DtVrfObject * | createObject (const DtObjectType &objectType, DtVrfObjectManager *vrfObjectManager, const DtString &classType, bool createLocalObject=true, bool publishLocalObject=true, const DtEntityIdentifier &objectIdentifier=DtEntityIdentifier::nullId(), const DtGlobalObjectDesignator *globalId=0, DtReflectedObject *reflectedObject=0, const DtString &objectName=DtString::nullString(), const DtString &objectLabel=DtString::nullString(), DtForceType forceType=DtForceOther, const DtVector &location=DtVector::zero(), const DtTaitBryan *orientation=0, bool projection=false, bool closedFigure=false, const DtAppearance &appearance=DtAppearance::nullAppearance(), const DtString &readerWriterName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) |
| Create and initialize a new sim object, using the factory. | |
| static DtVrfObject * | createAndInit (DtVrfObjectManager *vrfObjectManager, DtlObjPtr mtlStream) |
| Create and initialize a new sim object from a mtl stream. | |
| static void | verticesChangedCallback (DtVrfObject *obj, DtVrfObjectPredicateEvaluator *predicateEval, void *userData) |
| Invokes all vertices-changed callbacks that have registered with the object. | |
| static void | relativeVerticesChangedCallback (DtVrfObject *obj, DtVrfObjectPredicateEvaluator *predicateEval, void *userData) |
| Invokes all relative-vertices-changed callbacks. | |
| static void | postInitFromParamsCallback (DtVrfObjectStateRepository &stateRepository, void *usr) |
| Callback function registered with object's state repository. | |
Static Public Member Functions inherited from DtReaderWriter | |
| static void | putIndent (FILE *fp, int indentLevel) |
| static const DtVariableBindingsList & | nullVariableReference () |
| static void | setPostGetSelfCallback (DtGetSelfCallbackFcn fcn, void *usrData) |
| static void | setPrePutSelfCallback (DtPutSelfCallbackFcn fcn, void *usrData) |
| static const DtFilename & | appPath () |
| Gets the current working directory. | |
Protected Member Functions | |
| DtVrfObject () | |
| Abstract base classes should not be constructed. | |
| DtVrfObject (const DtVrfObject &orig) | |
| copy constructor | |
| DtVrfObject & | operator= (const DtVrfObject &orig) |
| assignment operator | |
| virtual void | setupStateRepository () |
| Called by init() after state repository's init() has been called. | |
| virtual void | setupNetInterface () |
| Called by init() after net interface's init() has been called. | |
| void | emptyVertexList () |
| Non virtual utility function - called in destructor. | |
| void | copyVertexList (const DtList &orig) |
| Non-virtual utility function called in constructor. | |
| virtual void | validateObjectType () |
| Validates the object type to make sure there are no -1s in the object type. | |
| virtual void | processPostInitFromParamsCallback (DtVrfObjectCallbackFunction fcn, void *usr) |
| Invokes callback added through a call to addPostInitFromParamsCallback. | |
| virtual void | initializeCommunicationInterfaceCallbacks () |
| Adds admin content callback registration. | |
| virtual void | processSetOverlayLayerTask (const DtVrfObjectMessage *msg) |
Protected Member Functions inherited from DtReaderWriter | |
| virtual void | bindToRwAsVariable (const DtReaderWriter *rw) |
| Copies values from the specified DtReaderWriter. | |
| virtual void | bindLocalVariables (const DtVariableBindingsList &variableBindings) |
| Checks to see if this RW object is a variable reference that can be bound using the provided bindings. | |
| virtual void | putData (FILE *fp, int indentLevel=0) |
| Deriving class overrides these to get/put class specific data. | |
| virtual DtlObjPtr | getData (DtlObjPtr args, const DtFilename &searchPath, const DtVariableBindingsList &variableBindings) |
| Deriving class overrides these to get/put class specific data. | |
Static Protected Member Functions | |
| static void | setOverlayLayerTaskCallback (const DtVrfObjectMessage *msg, void *usr) |
Static Protected Attributes | |
| static DtSimObjectFactory * | theFactory |
| static int | theDefaultNotifyLevel |
Static Protected Attributes inherited from DtReaderWriter | |
| static DtString | theUnspecifiedValue |
| static DtGetSelfCallbackInfo | thePostGetSelfCallback |
| static DtPutSelfCallbackInfo | thePrePutSelfCallback |
| static const DtVariableBindingsList | theEmptyVariableBindingsList |
| static DtReaderWriterFactory | theFactory |
| virtual void | processReadDRThresholdSettings (const DtSettingsObject *settings) |
| Callback function registered with the DtVrfSimSettings class. | |
| static void | readDRThresholdSettingsCallback (const DtSettingsObject *settings, void *usr) |
| Callback function registered with the DtVrfSimSettings class. | |
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
It has the following elements:
| typedef std::pair<DtVrfObjectCallbackFunction, void*> DtVrfObject::DtVrfObjectCallbackDataPair |
Definitions of container types used in the postInitFromParameters callback mechansim.
| typedef std::pair<DtVrfObject*, DtVrfObjectCallbackDataPair> DtVrfObject::DtVrfObjectCallbackDataPair2 |
Definitions of container types used in the postInitFromParameters callback mechansim.
| typedef std::list<DtLuaScriptInterfaceExtension::CreatorUserPair> DtVrfObject::ScriptInterfaceExtensions |
|
protected |
Abstract base classes should not be constructed.
| DtVrfObject::DtVrfObject | ( | const DtObjectType & | objectType, |
| DtVrfObjectManager * | vrfObjectManager, | ||
| bool | createLocalObject = true, |
||
| bool | publishLocalObject = true, |
||
| const DtEntityIdentifier & | objectIdentifier = DtEntityIdentifier::nullId(), |
||
| const DtGlobalObjectDesignator * | globalId = 0, |
||
| DtReflectedObject * | reflectedObject = 0, |
||
| const DtString & | objectName = DtString::nullString(), |
||
| const DtString & | objectLabel = DtString::nullString(), |
||
| DtForceType | forceType = DtForceOther, |
||
| const DtList * | vertices = 0, |
||
| const DtTaitBryan * | orientation = 0, |
||
| bool | projection = false, |
||
| bool | closedFigure = false, |
||
| const DtAppearance & | appearance = DtAppearance::nullAppearance(), |
||
| const DtString & | readerWriterName = "vrf-object", |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) |
|
virtual |
destructor
|
protected |
copy constructor
|
virtual |
Virtual construction - must be called before any other member functions are called.
|
virtual |
Allows an external process to invoke creation of a communications interface, if myCommunicationInterface is NULL.
|
virtual |
Allows an external process to invoke creation of a communications interface, if myCommunicationInterface is NULL, and pass a radio descriptor list.
|
virtual |
Allows an external process to invoke creation of a DtSetDataManager, if mySetDataManager is NULL.
|
virtual |
Initialization - must be called after create() and before any other member functions are called.
|
virtual |
Called by create().
Ticks object's organization manager, task manager, and component manager, and then calls down to base class tick. Calls invokeVrfObjectPredicateCallbacks.
|
virtual |
Override createRepository() to check if repository created in base class version is a DtSimVrfObjectBaseStateRepository (or a derived type).
If it is, returns true, if not Returns false.
|
virtual |
|
virtual |
|
virtual |
Creates myVrfObjectPlanManager based on the type specified in mySubComponentTypes.
|
virtual |
|
virtual |
Get a pointer to our sim manager.
|
virtual |
|
virtual |
Get pointers to our various types of subcomponents.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Returns the extent of the vrfObject, if the vrfObject has one.
If the vrfObject does not have an extent, and uninitialized extent is returned.
Implementation Detail: The extent is determined by transforming the vrfObjects local bounding volume to it's current location/orientation and then fitting an axis-aligned extent around the resulting world bounding volume.
|
virtual |
If the vrfObject has geometry, and thus an extent, then this function expands the specified extent to include the vrfObjects extent.
See the DtSsExtentIntersector for more information on why this function is necessary.
|
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 |
Setup self from interface messages.
|
virtual |
Returns true if object is being simulated by a VR-Forces-simulated object, false if not.
|
virtual |
|
virtual |
returns true if object is simulating components VR-Forces components can be attached to non- VR-Forces entities.
In that case a call to isLocal() will be false, and a call to isVrfSimulatedObject() might be true. Neither will indicate if the components are being simulated on this back end. Method isSimulatingComponents() will interrogate the component manager. The presence of components in the component manager indicates that this back end is responsible for handling ride-along attachment.
|
virtual |
Override to write out <use-default> string for unspecified parameters.
Reimplemented from DtReaderWriter.
|
virtual |
Override to do additional setup required when reading older oob, ovl files.
Reimplemented from DtReaderWriter.
Override to inform the vrfObjectManager when the name changes.
Returns true if successful. Names which are too long may cause a failure, see baseSetObjectName(). If the baseSetObjectName() fails and rename is true, this function generates the next standard name for the object, calls baseSetObjectName with that name and then returns false. If rename is false when the set name fails, the name is left unchanged and the function returns false.
|
virtual |
Adds a new string which can be used to reference this object by name.
The object will register the alias with the ObjectManager.
|
virtual |
Unregisters all aliases with object manager and removes the aliases from the local alias list.
|
virtual |
WARNING: These methods are obsolete but have been retained for backward compatibility.
These methods may be removed in a future release. If you are testing for changes in an object's vertices, then the methods addVerticesChangedCallback and removeVerticesChangedCallback should be used instead. These methods are now equivalent to the {add/remove}VerticesChangedCallback functions. If you need to check for changes to the object other than/in addition to changes to vertices, then define your own DtVrfObjectPredicate function, and register a callback associated with that predicate object using the addVrfObjectPredicateCallback function.
Register/remove a callback function to be invoked when the object changes.
|
virtual |
|
virtual |
Adds/removes a callback to be invoked whenever an object's local vertices change.
If an object is attached to another object, this callback will be called for every movement of the parent object. If you desire callbacks invoked only on modification of the geometry, use addRelativeVerticesChangedCallback().
|
virtual |
Adds/removes a callback to be invoked whenever an object's local vertices change.
If an object is attached to another object, this callback will be called for every movement of the parent object. If you desire callbacks invoked only on modification of the geometry, use addRelativeVerticesChangedCallback().
|
virtual |
Adds/removes a callback to be invoked whenever an object's relative vertices change.
I.e: A route attached to a moving object will have its local vertices changing, but not it's relative vertices.
|
virtual |
Adds/removes a callback to be invoked whenever an object's relative vertices change.
I.e: A route attached to a moving object will have its local vertices changing, but not it's relative vertices.
|
virtual |
Add/remove a callback function to be invoked when the DtVrfObject predicate object associated with it returns true().
|
virtual |
|
virtual |
For testing.
Returns the number of predicate callbacks registered with this object.
|
virtual |
Called each tick.
Iterates through myPredicateCallbackList, calling the predicate object's isTrue() function. If it time to test the predicate (isTimeToTest()) and the predicate's isTrue() function returns true, it invokes the associated callback function.
|
virtual |
Sets the coordinate system in mySimState (a DtVrfObjectStateRepository) and in myOvlVertices.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Set/get the entity's global Id.
The global Id can be used to uniquely identify an entity across all other applications/federates. Under HLA/RPR, DtGlobalObjectDesignator is typdef'd to a DtString, and under DIS, it is typedef'd to a DtObjectId.
|
virtual |
Set/get the name of the object.
Returns true if the name set was successful. Since there are length restrictions on the name (depending on the type of net interface and protocol being used) name setting may fail.
|
virtual |
|
virtual |
Set/get the label of the object.
|
virtual |
|
virtual |
Set/get the overlay parent of the object.
|
virtual |
|
virtual |
VR-Link network state repository.
|
virtual |
|
virtual |
VR-Forces network interface.
|
virtual |
|
virtual |
|
virtual |
Set/get the object identifier (DIS/RPR site:host:entity).
|
virtual |
|
virtual |
Returns true if object is local (has the same simulation address as the manager), false if not.
|
virtual |
Set/get flag indicating whether or not object should be published.
|
virtual |
Set/get flag indicating whether or not object should be published.
|
virtual |
set by factory on creation
|
virtual |
|
virtual |
same as type()
|
virtual |
Clear out vertices changed callback list.
Should only be called by the DtVrfObjectManager, upon queuing object for removal and deletion.
|
virtual |
Clear out relative vertices changed callback list.
Should only be called by the DtVrfObjectManager, upon queuing object for removal and deletion.
|
virtual |
Clear out object predicate callback list.
Should only be called by the DtVrfObjectManager, upon queuing object for removal and deletion.
|
static |
|
static |
a DtSimObjectFactory is allocated by the DtSimCreator, and this pointer is set.
The DtSimCreator deletes this pointer when it is deleted. This is done this way because we don't allow static initialization
Reimplemented from DtReaderWriter.
|
static |
|
virtual |
|
virtual |
|
virtual |
| void DtVrfObject::setEntityType | ( | const DtEntityType & | entityType | ) |
| const DtEntityType& DtVrfObject::entityType | ( | ) | const |
| void DtVrfObject::setDestroyed | ( | bool | destroyed | ) |
| bool DtVrfObject::isDestroyed | ( | ) | const |
|
virtual |
place entity at 'location', on the ground, keeping its current heading
| Input | |
| location | new location for the entity |
| requireAllData | if true and dataAvailable is also specified this call will not make any changes to the entity unless all intersections have terrain data available. |
| Output | |
| dataAvailable | prevents the call from blocking due to terrain paging and will get a true value if the terrain intersections are successful. See DtVrfMovingObjectStateRepository::clampToGround for more information. |
|
virtual |
give entity the specified 'heading', but stay at its current location
| Input | |
| heading | new heading for the entity |
| requireAllData | if true and dataAvailable is also specified this call will not make any changes to the entity unless all intersections have terrain data available. |
| Output | |
| dataAvailable | prevents the call from blocking due to terrain paging and will get a true value if the terrain intersections are successful. See DtVrfMovingObjectStateRepository::clampToGround for more information. |
|
virtual |
place entity at specified 'location' and 'heading' on the ground
| Input | |
| location | new location for the entity |
| heading | new heading for the entity |
| requireAllData | if true and dataAvailable is also specified this call will not make any changes to the entity unless all intersections have terrain data available. |
| Output | |
| dataAvailable | prevents the call from blocking due to terrain paging and will get a true value if the terrain intersections are successful. See DtVrfMovingObjectStateRepository::clampToGround for more information. |
| const DtString& DtVrfObject::echelonIdString | ( | ) | const |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Returns first healthy subordinate if it exists, 0 if not.
|
inlinevirtual |
|
virtual |
|
virtual |
|
virtual |
| DtAttachedTerrain* DtVrfObject::terrainAttachedTo | ( | ) |
| const DtAttachedTerrain* DtVrfObject::terrainAttachedTo | ( | ) | const |
|
virtual |
|
virtual |
|
inline |
Set to true when object is about to be removed.
References myAboutToBeRemoved.
|
inline |
References myAboutToBeRemoved.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Returns a pointer to the object console member of this object.
|
virtual |
Returns a pointer to the object console member of this object.
|
virtual |
|
virtual |
|
virtual |
| DtVrfObjectSubComponentTypes* DtVrfObject::vrfSubComponentTypes | ( | ) | const |
For use in virtual construction.
Casts mySubComponentTypes to derived type.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Add/remove callback function to be invoked immediately following the point at which the newly created object gets initialized from its parameter entry.
The call to add a callback must be called before DtVrfObject::init gets called.
|
virtual |
Add/remove callback function to be invoked immediately following the point at which the newly created object gets initialized from its parameter entry.
The call to add a callback must be called before DtVrfObject::init gets called.
|
virtual |
|
static |
Sets the notify level for all object consoles.
|
static |
|
virtual |
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 |
Remove a lua script extension that was previously added.
|
virtual |
|
static |
Returns a newly created DtVrfObject.
This is the function that gets registered with the factory.
|
static |
Create and initialize a new sim object, using the factory.
|
static |
Create and initialize a new sim object, using the factory.
|
static |
Create and initialize a new sim object from a mtl stream.
|
static |
Invokes all vertices-changed callbacks that have registered with the object.
Updates the predicate's (DtLclVerticesNotEqualPredicate) vertices.
|
static |
Invokes all relative-vertices-changed callbacks.
|
static |
Callback function registered with object's state repository.
Gets called immediately after DtVrfObjectStateRepository::initializeFromParameters gets called. Calls processPostInitFromParamsCallback.
|
static |
Callback function registered with the DtVrfSimSettings class.
Called by DtVrfObject::init().
|
virtual |
Callback function registered with the DtVrfSimSettings class.
Called by DtVrfObject::init().
|
virtual |
Callback that is invoked when the entity is about to be removed from the simulation.
|
virtual |
Callback that is invoked when the entity is about to be removed from the simulation.
|
virtual |
Callback that is invoked when the entity is about to be removed from the simulation.
|
virtual |
Callback that is invoked when a set location request is completed.
|
virtual |
Callback that is invoked when a set location request is completed.
|
virtual |
Callback that is invoked when a set location request is completed.
|
protected |
assignment operator
|
protectedvirtual |
|
protectedvirtual |
|
protected |
Non virtual utility function - called in destructor.
|
protected |
Non-virtual utility function called in constructor.
|
protectedvirtual |
Validates the object type to make sure there are no -1s in the object type.
If there are, it will change them to 0's
|
protectedvirtual |
Invokes callback added through a call to addPostInitFromParamsCallback.
|
protectedvirtual |
Adds admin content callback registration.
Currently registers for DtSetOverlayLayerAdmin message
|
staticprotected |
|
protectedvirtual |
|
protected |
|
staticprotected |
|
protected |
|
protected |
passed in to constructor, held for SR construction
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
isLocal() used to check simulation address against object identifier to see if this was a local object, but myCreateLocalObject should already contain this information
|
protected |
Returns true if this is a vrf simulated object.
Locally set to the same value as passed into constructor for createLocal
|
protected |
Passed into constructor - held only to pass into create() function for virtual construction.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Used in create().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
The following member data are backward compatible reading of ovl files No accessors/mutators provided.
They are just used in reading old ovl files.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
List of predicate function callbacks.
Users can register callbacks associated with a DtVrfObjectPredicate object. This class evaluates the isTrue() function associated with each predicate object. When isTrue() returns true, it invokes the callback function that it was registered with.
|
protected |
List of DtSimObjectCallbackFunction's, to be invoked when the object's position changes.
|
protected |
List of DtSimObjectCallbackFunction's, to be invoked when the object's relative position changes.
|
protected |
|
protected |
|
protected |
|
protected |
Set to true if this object is about to be removed from the object manager list.
Referenced by aboutToBeRemoved(), and setAboutToBeRemoved().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |