31 #include "vl/globalObjectDesignator.h"
32 #include <vlpi/entityIdentifier.h>
35 #include <vl/hostStructs.h>
36 #include <vlpi/appearance.h>
37 #include <vlutil/vlList.h>
38 #include <matrix/geodeticCoord.h>
40 #include <boost/smart_ptr/shared_ptr.hpp>
41 #include <tbb/spin_mutex.h>
42 #include <tbb/spin_rw_mutex.h>
132 : mySimObject(simObject)
183 virtual void setRecreateUUIDOnLoad(
bool);
186 virtual void setResolved(
bool);
216 #ifdef DtObjectDebugger_Enable
228 SubordinateOfForceLevel
250 bool createLocalObject =
true,
251 bool publishLocalObject =
true,
252 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
255 const DtString & objectName = DtString::nullString(),
256 const DtString & objectLabel = DtString::nullString(),
257 DtForceType forceType = DtForceOther,
258 const DtList* vertices = 0,
259 const DtTaitBryan* orientation = 0,
260 bool projection =
false,
261 bool closedFigure =
false,
262 const DtAppearance& appearance = DtAppearance::nullAppearance(),
263 const DtString & readerWriterName =
"vrf-object",
266 bool connectToRadioNetowrk =
true);
273 static void enableSingleObjectMode();
275 static bool singleObjectModeActive();
281 virtual bool create(
bool createNetworkInterface =
true);
285 virtual bool finalizeObjectCreation();
288 virtual void finalizeObjectRead();
292 virtual void setSimulationCapable(
bool);
293 virtual bool simulationCapable()
const;
298 virtual void prepareForReinitialization();
301 virtual void canBeHandedOff();
305 virtual void createCommunicationsInterface();
313 virtual void createSetDataManager();
317 virtual int vrfSessionId()
const;
330 virtual void startTick();
331 virtual void tickComponents();
332 virtual void endTick();
335 virtual void tickPublisherOnly();
338 virtual bool hasGuiKeyword(
const DtString&)
const;
345 virtual bool createTaskManager();
346 virtual bool createScriptInterfaceHandler();
347 virtual bool createComponentManager();
350 virtual bool createVrfObjectPlanManager();
351 virtual bool createRadio();
352 virtual bool createNavigationInterfaceManager();
355 virtual bool initializeComponentManager();
359 virtual void setNavigationEnabled(
bool);
360 virtual bool navigationEnabled()
const;
365 virtual void addToPotentialLuaScripts(
int);
366 virtual int potentialLuaScripts()
const;
369 virtual int scenarioRunId()
const;
372 virtual double timeOfDay()
const;
375 virtual double dateAndTimeOfDay()
const;
383 virtual double illumination()
const;
387 virtual double expectedIllumination(
double dateAndTimeOfDay)
const;
393 virtual void updateIllumination()
const;
396 virtual void setRangeRingsParametersPublisherTickRange(
double d);
399 virtual void createAndInitializeRangeRingsParameterPublisher();
403 virtual bool needsIlluminationUpdate()
const;
408 virtual bool isOnTopOf(
const DtVrfObject*,
bool checkSupportPoints =
false)
const;
409 virtual bool isOnTopOf(
const DtVrfObject*,
double d,
bool checkSupportPoints =
false)
const;
412 virtual bool isSimulationObject()
const;
413 virtual bool isEntity()
const;
414 virtual bool isUnit()
const;
420 virtual bool checkAndDisembarkIfEmbarked(
const DtVector& localPosition);
424 virtual bool checkIfMoveOntoEmbarked(
const DtVector& localPosition,
DtVrfObject*& hit,
const std::list<DtUUID>& additionalIgnore = std::list<DtUUID>());
427 virtual bool hasHighFidelityObjectGeometryModel()
const;
430 virtual bool isEmbeddedInTerrain()
const;
433 virtual bool isGlobalPlan()
const;
465 virtual DtExtent roughExtent()
const;
478 virtual void expandExtent(
DtExtent& extent)
const;
483 virtual void sendVrfObjectCreated(
unsigned long requestId = 0,
bool requestCreated =
true);
490 virtual void setIsVrfSimulatedObject(
bool b);
492 virtual bool isVrfSimulatedObject()
const;
495 return isVrfSimulatedObject();
505 virtual bool isSimulatingComponents()
const;
508 virtual void save(std::string&);
511 virtual void putSelf(std::string& fp,
int indentLevel = 0,
bool writeUnspecified =
true,
518 virtual bool validNameLength(
const DtString& name)
const;
527 virtual bool setMarkingText(
const DtString & name,
bool rename =
true);
542 virtual void addVrfObjectChangedCallback(
544 virtual void removeVrfObjectChangedCallback(
548 virtual void addNavigationInterfaceChangedCallback(
550 virtual void removeNavigationInterfaceChangedCallback(
559 virtual void addVerticesChangedCallback(
561 virtual void removeVerticesChangedCallback(
570 virtual void invokeObjectDataChangedCallbacks(ChangeFlag);
578 virtual void addRelativeVerticesChangedCallback(
580 virtual void removeRelativeVerticesChangedCallback(
586 virtual void addVrfObjectPredicateCallback(
589 void* userData = 0)
const;
590 virtual void removeVrfObjectPredicateCallback(
593 void* userData = 0)
const;
597 virtual int predicateCallbackCount()
const;
603 virtual void invokeVrfObjectPredicateCallbacks();
613 virtual bool createNetInterface();
624 virtual const DtString & globalIdString()
const;
630 virtual bool baseSetMarkingText(
const DtString & name);
631 virtual const DtString& markingText()
const;
637 virtual const DtString& objectName()
const;
641 virtual void addNameAlias(
const DtString& name);
645 virtual void unregisterAliases();
648 virtual void setUUID(
const DtUUID&);
651 virtual const DtUUID& uuid()
const;
654 virtual const DtString & objectLabel()
const;
655 virtual void setObjectLabel(
const DtString & objectLabel);
658 virtual DtForceType forceType()
const;
659 virtual void setForceType(DtForceType f);
662 virtual void setIsSubordinateOfForceLevel(
bool);
663 virtual bool isSubordinateOfForceLevel()
const;
666 virtual const DtString & overlayParent()
const;
667 virtual void setOverlayParent(
const DtString & overlayParent);
679 virtual void setObjectIdentifier(
const DtEntityIdentifier & objectId);
680 virtual const DtEntityIdentifier & objectIdentifier()
const;
684 virtual const DtString & objectIdentifierString()
const;
688 virtual bool isLocal()
const;
694 virtual void setPublishObject(
bool publishObject);
695 virtual bool publishObject()
const;
701 virtual DtString objectClassType()
const;
702 virtual void setObjectClassType(
const DtString & objectClassType);
706 virtual void clearVerticesChangedCallbacks();
710 virtual void clearRelativeVerticesChangedCallbacks();
714 virtual void clearPredicateCallbacks();
716 static void addSimObjectCreatorFcn(
const DtString & type,
730 void setEntityType(
const DtEntityType & entityType);
731 const DtEntityType & entityType()
const;
733 void setDestroyed(
bool destroyed);
734 bool isDestroyed()
const;
747 virtual void place(
const DtVector& location,
bool* dataAvailable = 0,
748 bool requireAllData =
false);
761 virtual void place(
const DtReal heading,
bool* dataAvailable = 0,
762 bool requireAllData =
false);
776 virtual void place(
const DtVector& location,
const DtReal heading,
777 bool* dataAvailable = 0,
bool requireAllData =
false);
779 const DtString & echelonIdString()
const;
792 virtual const DtObjectId & objectId()
const;
796 virtual bool isEmbarked()
const;
812 virtual DtTaitBryan orientationRelativeTo(
const DtTaitBryan&,
const DtVrfObject* relativeTo)
const;
819 virtual bool isEmbarkedOn(
const DtUUID& parent)
const;
828 void setAboutToBeRemoved(
bool);
829 bool aboutToBeRemoved()
const;
833 virtual DtOutputStream& objectConsoleDebug(
const DtString& channel =
"")
const;
834 virtual DtOutputStream& objectConsoleVerbose(
const DtString& channel =
"")
const;
835 virtual DtOutputStream& objectConsoleInfo(
const DtString& channel =
"")
const;
836 virtual DtOutputStream& objectConsoleWarn(
const DtString& channel =
"")
const;
837 virtual DtOutputStream& objectConsoleError(
const DtString& channel =
"")
const;
877 virtual void duplicateVrfSubComponentTypes();
880 virtual void restoreDuplicatedVrfSubComponentTypes();
884 virtual bool hasPlan()
const;
887 virtual bool executingPlan()
const;
890 virtual bool isCurrentlyTasked()
const;
893 virtual bool isEllipsoid()
const;
910 virtual DtU8 getNextEmitterSystemId();
913 static void setDefaultNotifyLevel(DtNotifyLevelType
level);
915 static DtNotifyLevelType defaultNotifyLevel();
924 virtual const ScriptInterfaceExtensions& scriptExtensions()
const;
928 virtual void regenerateUUIDForImport();
931 virtual std::string archiveState();
947 virtual bool convertToLocalObject(
DtString&
error,
const std::string& archivedState =
"");
954 bool awaitingHandoffCompletion()
const;
965 virtual bool prepareForHandoff();
979 bool createLocalObject =
true,
980 bool publishLocalObject =
true,
981 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
984 const DtString & objectName = DtString::nullString(),
985 const DtString & objectLabel = DtString::nullString(),
986 DtForceType forceType = DtForceOther,
987 const DtList* vertices = 0,
988 const DtTaitBryan* orientation = 0,
989 bool projection =
false,
990 bool closedFigure =
false,
991 const DtAppearance& appearance = DtAppearance::nullAppearance(),
992 const DtString & readerWriterName = DtString::nullString(),
995 bool connectToRadioNetowrk =
true);
1002 bool createLocalObject =
true,
1003 bool publishLocalObject =
true,
1004 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
1007 const DtString & objectName = DtString::nullString(),
1008 const DtString & objectLabel = DtString::nullString(),
1009 DtForceType forceType = DtForceOther,
1010 const DtList* vertices = 0,
1011 const DtTaitBryan* orientation = 0,
1012 bool projection =
false,
1013 bool closedFigure =
false,
1014 const DtAppearance& appearance = DtAppearance::nullAppearance(),
1015 const DtString & readerWriterName = DtString::nullString(),
1018 bool connectToRadioNetowrk =
true);
1025 bool createLocalObject =
true,
1026 bool publishLocalObject =
true,
1027 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
1030 const DtString & objectName = DtString::nullString(),
1031 const DtString & objectLabel = DtString::nullString(),
1032 DtForceType forceType = DtForceOther,
1033 const DtVector& location = DtVector::zero(),
1034 const DtTaitBryan* orientation = 0,
1035 bool projection =
false,
1036 bool closedFigure =
false,
1037 const DtAppearance& appearance = DtAppearance::nullAppearance(),
1038 const DtString & readerWriterName = DtString::nullString(),
1041 bool connectToRadioNetowrk =
true);
1050 static DtVrfObject* createAndInitForSimulationObjectGroup(
1052 double offsetRotation = 0.);
1057 static void verticesChangedCallback(
const DtVrfObject* obj,
1061 static void relativeVerticesChangedCallback(
const DtVrfObject* obj,
1072 static void readDRThresholdSettingsCallback(
1074 virtual void processReadDRThresholdSettings(
const DtSettingsObject* settings);
1078 virtual void addedToObjectManager();
1082 virtual void addObjectAboutToBeRemovedCallback(
1084 virtual void removeObjectAboutToBeRemovedCallback(
1086 virtual void invokeVrfObjectAboutToBeRemovedCallbacks();
1091 virtual void addObjectModifiedViaMessageCallback(
1093 virtual void removeObjectModifiedViaMessageCallback(
1095 virtual void invokeObjectModifiedViaMessageCallback();
1101 virtual void addNewSensorContactCallback(
1103 virtual void removeNewSensorContactCallback(
1105 virtual void invokeNewSensorContactCallbacks();
1110 virtual void addSetLocationCompleteCallback(
1112 virtual void removeSetLocationCompleteCallback(
1114 virtual void invokeSetLocationCompleteCallbacks();
1123 virtual void updateTerrainEmbeddedGeometry(
bool force =
false);
1134 virtual bool initializeNetInterface();
1137 virtual void setupStateRepository();
1140 virtual bool setupNetInterface();
1143 void emptyVertexList();
1146 void copyVertexList(
const DtList& orig);
1150 virtual void validateObjectType();
1157 virtual void initializeCommunicationInterfaceCallbacks();
1163 virtual void updateBoundingVolumeBasedOnPosture();
1166 virtual DtExtent computeExtent()
const;
1169 virtual void initializeObjectGeometryModel();
1172 virtual void cleanupItemsNeededForHandoff();
1175 virtual bool recreateItemsNeededForHandoff();
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
bool myAwaitingHandoffCompletion
Definition: vrfObject.h:1332
DtReflectedObject * myReflectedObject
Passed into constructor - held only to pass into create() function for virtual construction.
Definition: vrfObject.h:1217
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:59
Definition: scriptInterfaceHandler.h:19
Specialized version of the DtRwUUID – creates a new UUID if one is not specified in the file...
Definition: vrfObject.h:172
NOTE: This entire class is deprecated, in favor of Dt3dChord.
Definition: chord.h:40
Definition: vrfObject.h:113
DtVrfUnderwaterAcoustics * myVrfUnderwaterAcoustics
Definition: vrfObject.h:1278
DtRwString myOverlayParent
Definition: vrfObject.h:1193
Definition: vrfUnderwaterAcoustics.h:26
virtual DtlObjPtr getData(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
Definition: attachedTerrain.h:42
bool myMutableIlluminationCalculatedThisTick
Tracks whether illumination has been calculated this tick or not. Only calculate it once for performa...
Definition: vrfObject.h:1310
Definition: vrfObjectNavInterface.h:18
std::pair< const DtVrfObject *, DtVrfObjectCallbackDataPair > DtVrfObjectCallbackDataPair2
Definition: vrfObject.h:235
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtVrfObjectCallbackList myNavigationInterfaceChangedCallbackList
List of functions to call when the navigation interface has changed.
Definition: vrfObject.h:1259
Definition: symbolString.h:20
static DtSimObjectFactory * theFactory
Definition: vrfObject.h:1183
DtRwObjectType myObjectType
passed in to constructor, held for SR construction
Definition: vrfObject.h:1189
Definition: navInterfaceManager.h:18
DtVrfObjectUUID myUUID
Definition: vrfObject.h:1315
DtVrfObjectCallbackList myObjectModifiedViaMessage
Definition: vrfObject.h:1276
virtual bool isVrfSimulated() const
Definition: vrfObject.h:493
DtRwEntityIdentifier myObjectIdentifier
Definition: vrfObject.h:1185
virtual bool objectValid()
Definition: vrfObject.h:138
ChangeFlag
Definition: vrfObject.h:221
DtRwVector myOvlTargetLocation
Definition: vrfObject.h:1240
Definition: reflectedExtAggregate.h:35
class DtSimRadio:
Definition: simRadio.h:25
DtSimObjectNetInterface * myNetInterface
Definition: vrfObject.h:1202
class DtRwObjectType:
Definition: rwObjectType.h:18
DtVrfObjectParameters * myParameterEntry
Definition: vrfObject.h:1299
DtTime myLastTerrainEmbeddedGeometryUpdateTime
Definition: vrfObject.h:1328
class DtObstacleAreaCompatilibility:
Definition: obstacleAreaCompatilibility.h:21
tbb::spin_rw_mutex myIlluminationMutex
Definition: vrfObject.h:1311
Definition: vrfObject.h:225
DtRwVrfObjectName myMarkingText
Definition: vrfObject.h:1191
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
std::set< DtString > myNameAliasList
Definition: vrfObject.h:1316
Description: This class will look at parameter and state data to publish range rings (via the object ...
Definition: rangeRingsParametersPublisher.h:26
Allows manipulating a terrain object.
Definition: terrainImplementation.h:141
Definition: vrfObject.h:227
DtScriptInterfaceHandler * myScriptInterfaceHandler
Definition: vrfObject.h:1231
Contains the DtLclVerticesNotEqualPredicate class declaration.
Definition: lclVerticesNotEqualPredicate.h:24
DtCallbackList< DtVrfObjectHandoffData & > DtVrfObjectHandoffCallbackList
Definition: vrfObject.h:120
DtU8 myNextEmitterSystemId
Definition: vrfObject.h:1291
DtExtent myExtent
Definition: vrfObject.h:1178
int changedFlag
Definition: vrfObject.h:96
DtRwVector myOvlStartPoint
Definition: vrfObject.h:1241
DtRwBoolean myOvlObstacleIsBreached
Definition: vrfObject.h:1244
virtual void * userData() const
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
#define DT_DEFINE_OBJECT_DEBUGGER_NAME(type)
Definition: objectCounter.h:265
*virtual const DtObjectType & objectType() const
Default on in debug, off in release.
Definition: objectCounter.h:31
DtVrfObject * myParent
Definition: vrfObject.h:198
The DtSimObjectStateRepository is an abstract base class (ABC) for all state repositories.
Definition: simObjectStateRepository.h:46
Structure that is used during scenario import to determine what to do with the import data...
Definition: vrfObjectManager.h:135
DtVrfObjectCallbackList myRelativeVerticesChangedCallbackList
List of functions to call when some object data has changed.
Definition: vrfObject.h:1265
Definition: vrfObject.h:109
DtGeodeticCoord myLastIlluminationPosition
Definition: vrfObject.h:1308
Definition: readerWriterRegistry.h:39
DtVrfObjectCallbackList myAboutToBeRemovedCallbackList
Definition: vrfObject.h:1273
DtVrfObject *(* DtSimObjectCreatorFcn)(const DtObjectType &objectType, DtVrfObjectManager *simObjectManager, bool createLocalObject, bool publishLocalObject, const DtEntityIdentifier &objectIdentifier, const DtGlobalObjectDesignator *globalId, DtReflectedObject *reflectedObject, const DtString &objectName, const DtString &objectLabel, DtForceType forceType, const DtList *vertices, const DtTaitBryan *orientation, bool projection, bool closedFigure, const DtAppearance &appearance, const DtString &readerWriterName, DtReaderWriterRegistry *registry, const DtUUID &initialUUID, bool connectToRadioNet)
Definition: simObjectFactory.h:40
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
DtSimManager * mySimManager
Definition: vrfObject.h:1228
std::list< DtLuaScriptInterfaceExtension::CreatorUserPair > ScriptInterfaceExtensions
Definition: vrfObject.h:238
void(* DtVrfObjectPredicateCallbackFunction)(const DtVrfObject *obj, DtVrfObjectPredicateEvaluator *predicateEval, void *userData)
Callback function that takes a DtVrfObject*, a pointer to the DtVrfObjectPredicateEvaluator that caus...
Definition: vrfObjectPredicateCallbackInfo.h:22
DtVrfObject * myParent
Definition: vrfObject.h:167
Definition: vrfObject.h:226
Description: This repository holds all information that is common to all the forms of all entity/aggr...
Definition: vrfObjectStateRepository.h:87
DtTaitBryan myOrientation
Definition: vrfObject.h:1220
DtRangeRingsParametersPublisher * myRangeRingsParametersPublisher
This object will manage range rings from state and parameter data.
Definition: vrfObject.h:1298
DtSimRadio * myRadio
Definition: vrfObject.h:1232
DtVrfObjectCommunicationInterface * myCommunicationInterface
Definition: vrfObject.h:1287
File: rwEntityIdentifier.h.
Definition: rwEntityIdentifier.h:23
DtNavInterfaceManager * myNavInterfaceManager
Definition: vrfObject.h:1289
DtSharedVrfObjectReference mySharedReference
Definition: vrfObject.h:1317
Definition: settingsObject.h:27
DtAppearance myAppearance
Definition: vrfObject.h:1223
DtSharedVrfObjectReference class will allocate an empty DtVrfObjectReference if one is not assigned s...
Definition: vrfObjectReference.h:102
Definition: vrfObject.h:224
const bool myConnectToRadioNetwork
Definition: vrfObject.h:1320
Description: Readable, Writable uuid string.
Definition: rwUUID.h:419
bool aboutToBeRemoved() const
Definition: vrfObject.h:1340
class DtIfModifyVrfObject:
Definition: ifModifyVrfObject.h:50
Definition: objectType.h:27
virtual void echelonIdChanged()
Definition: vrfObject.h:790
bool myIsVrfSimulatedObject
Returns true if this is a vrf simulated object.
Definition: vrfObject.h:1213
List of DtRadioDescriptor subclasses that can be read from a RW type file.
Definition: radioDescriptorList.h:27
DtMovingObjectParameters * myMovingObject
Definition: vrfObject.h:1300
Instances of DtVrfObjectPredicate are used to evaluate a condition, given a DtVrfObject as an argumen...
Definition: vrfObjectPredicate.h:21
Definition: rwVector.h:23
static DtReaderWriterFactory * factory()
const DtVrfObject * mySimObject
Definition: vrfObject.h:143
DtGlobalObjectDesignator myGlobalId
Definition: vrfObject.h:1195
static const DtUUID & nullUUID()
DtVrfObjectSubComponentTypes.
Definition: vrfObjectSubComponentTypes.h:25
DtVrfObjectCallbackList myVerticesChangedCallbackList
List of DtSimObjectCallbackFunction's, to be invoked when the object's position changes.
Definition: vrfObject.h:1256
DtRwVector myOvlEndPoint
Definition: vrfObject.h:1242
bool myExtentInvalid
lazy per-tick cache of extent
Definition: vrfObject.h:1179
bool myAboutToBeRemoved
Set to true if this object is about to be removed from the object manager list.
Definition: vrfObject.h:1281
This class represents the console for an individual object.
Definition: objectConsole.h:41
The DtPhysicalWorld is the primary interface to and manager of all of the "physical" aspects of the s...
Definition: physicalWorld.h:88
virtual void invalidateObject()
Definition: vrfObject.h:139
Definition: coordSystem.h:54
class DtVrfObjectPredicateCallbackInfo:
Definition: vrfObjectPredicateCallbackInfo.h:32
DtLocalVertexList myOvlVertices
The following member data are backward compatible reading of ovl files No accessors/mutators provided...
Definition: vrfObject.h:1239
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtVrfObject * object
Definition: vrfObject.h:116
virtual void noRwValueSpecified()
What to do if no reader/writer value is specified when restoring from file.
HandoffFlag
Definition: vrfObject.h:103
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
bool myWarnedObjectName
Definition: vrfObject.h:1318
DtVrfObjectDeletionTracker(const DtVrfObject *simObject)
Definition: vrfObject.h:131
DtVrfObjectDeletionHandle myObjectDeletionHandle
Definition: vrfObject.h:1313
double myLastTimeIlluminationCalculated
Definition: vrfObject.h:1307
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtObstacleAreaCompatilibility myOvlObstacleArea
Definition: vrfObject.h:1243
bool myDuplicatedSubComponents
Definition: vrfObject.h:1331
DtVrfObjectHandoffCallbackList myObjectHandoffCallbackList
List of callbacks that will be invoked at points during object handoff.
Definition: vrfObject.h:1271
The moving-object-param parameter type is used for objects that are capable of movement, such as individual entities and aggregates.
Definition: movingObjectParameters.h:33
DtRwUUID & operator=(const DtRwUUID &orig)
Definition: vrfObject.h:108
bool myCreateLocalObject
isLocal() used to check simulation address against object identifier to see if this was a local objec...
Definition: vrfObject.h:1209
DtObjectConsole * myObjectConsole
Definition: vrfObject.h:1283
bool myProjection
Definition: vrfObject.h:1221
boost::shared_ptr< DtVrfObjectDeletionTracker > DtVrfObjectDeletionHandle
Definition: vrfObject.h:146
DtSetDataManager * mySetDataManager
Definition: vrfObject.h:1285
Definition: vrfObject.h:93
DtTerrainGeometryHandle * myTerrainEmbeddedGeometry
If the geometry for this object is embedded in the terrain this handle allows control.
Definition: vrfObject.h:1327
DtList myVertices
Definition: vrfObject.h:1219
The base class for all messages to/from a specific DtVrfObject.
Definition: vrfObjectMessage.h:30
bool myResolved
Definition: vrfObject.h:197
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream.
Definition: asyncJobServer.h:39
bool myRecreateOnLoad
Definition: vrfObject.h:196
class DtVrfObjectPlanManager:
Definition: vrfObjectPlanManager.h:33
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file.
double myLastWeatherHeading
Definition: vrfObject.h:1330
bool mySimulationCapable
Definition: vrfObject.h:1319
DtString myMutableGlobalIdStringCache
Definition: vrfObject.h:1196
class DtVrfObjectManager:
Definition: vrfObjectManager.h:202
This manager is on a per-DtVrfObject level, and is responsible for knowing what terrain areas an obje...
Definition: vrfObjectTerrainPreloadManager.h:36
Class Description: DtSimTaskManager manages the bookkeeping associated with starting, completing, clearing, and skipping tasks.
Definition: simTaskManager.h:54
virtual const DtVrfObject * object() const
Definition: vrfObject.h:137
DtVrfObjectSubComponentTypes * mySubComponentTypes
Used in create().
Definition: vrfObject.h:1226
The DtSimComponentManager is the top level class within a DtVrfObject which owns and manages all the ...
Definition: simComponentManager.h:39
DtVrfObjectCallbackList mySetLocationCompleteCallbackList
Definition: vrfObject.h:1274
DtLuaScriptInterfaceExtension *(* CreatorFcn)(void *usr)
Prototype for DtLuaScriptInterfaceExtension creator function.
Definition: luaScriptInterfaceExtension.h:34
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:37
Definition: vrfObject.h:110
Definition: vrfChordIntersectionRecord.h:19
class DtVrfObjectPredicateEvaluator:
Definition: vrfObjectPredicateEvaluator.h:18
double myIlluminationValue
Definition: vrfObject.h:1306
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
The central class of a DtVrfObject for all communications to and from the object. ...
Definition: vrfObjectCommunicationInterface.h:45
Definition: vrfObject.h:111
This class manages the distribution of DtSetDataRequests within a single DtVrfObject.
Definition: setDataManager.h:37
DtVrfObjectStateRepository * mySimState
Definition: vrfObject.h:1200
DtCallbackList< const DtVrfObjectCallbackData & > DtVrfObjectDataChangeCallbackList
Definition: vrfObject.h:99
DtVrfObjectPlanManager * myVrfObjectPlanManager
Definition: vrfObject.h:1234
Contains the declaration of the DtExtent class.
DtSimTaskManager * myTaskManager
Definition: vrfObject.h:1230
DtLuaScriptInterfaceExtension.
HandoffFlag handoffFlag
Definition: vrfObject.h:117
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtRwString myObjectClassType
Definition: vrfObject.h:1181
DtSimComponentManager * myComponentManager
Definition: vrfObject.h:1233
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
std::list< boost::shared_ptr< DtVrfObjectPredicateCallbackInfo > > myPredicateCallbackList
List of predicate function callbacks.
Definition: vrfObject.h:1251
DtVrfObjectManager * mySimObjectManager
Definition: vrfObject.h:1198
ScriptInterfaceExtensions myScriptInterfaceExtensions
Definition: vrfObject.h:1295
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
DtCallbackList< const DtVrfObject * > DtVrfObjectCallbackList
Definition: vrfObject.h:92
class DtIfVrfObjectCreated:
Definition: ifVrfObjectCreated.h:32
virtual DtlObjPtr getData(DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
void(* DtCallbackFunctionType)(const DtVrfObjectCallbackData &, void *)
The function signature of the callback function.
Definition: noArgumentCallbackList.h:95
DtForceType myForceType
Definition: vrfObject.h:1218
If the flag is Prepare, and you do not wish this object to be handed off, set the flag to Abort...
Definition: vrfObject.h:107
void setAboutToBeRemoved(bool)
Set to true when object is about to be removed.
Definition: vrfObject.h:1335
DtVrfObjectDataChangeCallbackList myObjectDataChangedCallbackList
List of callback functions to call when object data has changed.
Definition: vrfObject.h:1268
static int theDefaultNotifyLevel
Definition: vrfObject.h:1302
std::pair< DtVrfObjectCallbackFunction, void * > DtVrfObjectCallbackDataPair
Definitions of container types used in the postInitFromParameters callback mechanism.
Definition: vrfObject.h:234
DtVrfObjectTerrainPreloadManager * myTerrainPreloadManager
Definition: vrfObject.h:1293
Specialized version of DtRwString.
Definition: vrfObject.h:152
class DtLocalVertexList:
Definition: localVertexList.h:20
int myPotentialLuaScripts
Definition: vrfObject.h:1304
void(* DtVrfObjectCallbackFunction)(const DtVrfObject *obj, void *userData)
Callback function that takes a DtVrfObject* and a pointer to user-defined data.
Definition: vrfObject.h:90
RAII manager object for accessing paralle tick functionality.
Definition: parallelTickManager.h:324
DtVrfObjectCallbackList myNewSensorContactCallbackList
Definition: vrfObject.h:1275
Definition: vrfObject.h:112
Definition: vrfObject.h:101
class DtSimObjectFactory:
Definition: simObjectFactory.h:68
Represents a feature geometry.
Definition: featureGeometry.h:35
DtAttachedTerrain myObjectGeometryModel
The object geometry that this object can use to see if it intersects with a higher level fidelity mod...
Definition: vrfObject.h:1324
static const DtFilename & appPath()
Gets the current working directory.
bool myClosedFigure
Definition: vrfObject.h:1222
Used to know whether the DtVrfObject you're tracking has been deleted.
Definition: vrfObject.h:127
DtRwString & operator=(const DtRwString &orig)
Assign to DtString. Assigns value only.
DtString myMutableObjectIdStringCache
Definition: vrfObject.h:1186
class DtIfCreateVrfObject:
Definition: ifCreateVrfObject.h:84
DtRwBoolean myPublishObject
Definition: vrfObject.h:1204
const DtVrfObject * object
Definition: vrfObject.h:95
tbb::spin_mutex myPredicateCallbackListMutex
Definition: vrfObject.h:1252
DtRwString myObjectLabel
Definition: vrfObject.h:1192