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);
226 SubordinateOfForceLevel
248 bool createLocalObject =
true,
249 bool publishLocalObject =
true,
250 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
253 const DtString & objectName = DtString::nullString(),
254 const DtString & objectLabel = DtString::nullString(),
255 DtForceType forceType = DtForceOther,
256 const DtList* vertices = 0,
257 const DtTaitBryan* orientation = 0,
258 bool projection =
false,
259 bool closedFigure =
false,
260 const DtAppearance& appearance = DtAppearance::nullAppearance(),
261 const DtString & readerWriterName =
"vrf-object",
264 bool connectToRadioNetowrk =
true);
271 static void enableSingleObjectMode();
273 static bool singleObjectModeActive();
279 virtual bool create(
bool createNetworkInterface =
true);
283 virtual bool finalizeObjectCreation();
286 virtual void finalizeObjectRead();
290 virtual void setSimulationCapable(
bool);
291 virtual bool simulationCapable()
const;
296 virtual void prepareForReinitialization();
299 virtual void canBeHandedOff();
303 virtual void createCommunicationsInterface();
311 virtual void createSetDataManager();
315 virtual int vrfSessionId()
const;
328 virtual void startTick();
329 virtual void tickComponents();
330 virtual void endTick();
333 virtual void tickPublisherOnly();
336 virtual bool hasGuiKeyword(
const DtString&)
const;
343 virtual bool createTaskManager();
344 virtual bool createScriptInterfaceHandler();
345 virtual bool createComponentManager();
348 virtual bool createVrfObjectPlanManager();
349 virtual bool createRadio();
350 virtual bool createNavigationInterfaceManager();
353 virtual bool initializeComponentManager();
357 virtual void setNavigationEnabled(
bool);
358 virtual bool navigationEnabled()
const;
363 virtual void addToPotentialLuaScripts(
int);
364 virtual int potentialLuaScripts()
const;
367 virtual int scenarioRunId()
const;
370 virtual double timeOfDay()
const;
373 virtual double dateAndTimeOfDay()
const;
381 virtual double illumination()
const;
385 virtual double expectedIllumination(
double dateAndTimeOfDay)
const;
394 virtual void updateIllumination()
const;
397 virtual void updateWeather();
400 virtual void setRangeRingsParametersPublisherTickRange(
double d);
403 virtual void createAndInitializeRangeRingsParameterPublisher();
407 virtual bool needsIlluminationUpdate()
const;
412 virtual bool isOnTopOf(
const DtVrfObject*,
bool checkSupportPoints =
false)
const;
413 virtual bool isOnTopOf(
const DtVrfObject*,
double d,
bool checkSupportPoints =
false)
const;
416 virtual bool isSimulationObject()
const;
417 virtual bool isEntity()
const;
418 virtual bool isUnit()
const;
424 virtual bool checkAndDisembarkIfEmbarked(
const DtVector& localPosition);
428 virtual bool checkIfMoveOntoEmbarked(
const DtVector& localPosition,
DtVrfObject*& hit,
const std::list<DtUUID>& additionalIgnore = std::list<DtUUID>());
431 virtual bool hasHighFidelityObjectGeometryModel()
const;
434 virtual bool isEmbeddedInTerrain()
const;
439 virtual bool needsWeatherAreaUpdate()
const;
442 virtual bool isGlobalPlan()
const;
474 virtual DtExtent roughExtent()
const;
487 virtual void expandExtent(
DtExtent& extent)
const;
492 virtual void sendVrfObjectCreated(
unsigned long requestId = 0,
bool requestCreated =
true);
499 virtual void setIsVrfSimulatedObject(
bool b);
501 virtual bool isVrfSimulatedObject()
const;
504 return isVrfSimulatedObject();
514 virtual bool isSimulatingComponents()
const;
517 virtual void save(std::string&);
520 virtual void putSelf(std::string& fp,
int indentLevel = 0,
bool writeUnspecified =
true,
527 virtual bool validNameLength(
const DtString& name)
const;
536 virtual bool setMarkingText(
const DtString & name,
bool rename =
true);
551 virtual void addVrfObjectChangedCallback(
553 virtual void removeVrfObjectChangedCallback(
557 virtual void addNavigationInterfaceChangedCallback(
559 virtual void removeNavigationInterfaceChangedCallback(
568 virtual void addVerticesChangedCallback(
570 virtual void removeVerticesChangedCallback(
579 virtual void invokeObjectDataChangedCallbacks(ChangeFlag);
587 virtual void addRelativeVerticesChangedCallback(
589 virtual void removeRelativeVerticesChangedCallback(
595 virtual void addVrfObjectPredicateCallback(
598 void* userData = 0)
const;
599 virtual void removeVrfObjectPredicateCallback(
602 void* userData = 0)
const;
606 virtual int predicateCallbackCount()
const;
612 virtual void invokeVrfObjectPredicateCallbacks();
622 virtual bool createNetInterface();
633 virtual const DtString & globalIdString()
const;
639 virtual bool baseSetMarkingText(
const DtString & name);
640 virtual const DtString& markingText()
const;
646 virtual const DtString& objectName()
const;
650 virtual void addNameAlias(
const DtString& name);
654 virtual void unregisterAliases();
657 virtual void setUUID(
const DtUUID&);
660 virtual const DtUUID& uuid()
const;
663 virtual const DtString & objectLabel()
const;
664 virtual void setObjectLabel(
const DtString & objectLabel);
667 virtual DtForceType forceType()
const;
668 virtual void setForceType(DtForceType f);
671 virtual void setIsSubordinateOfForceLevel(
bool);
672 virtual bool isSubordinateOfForceLevel()
const;
675 virtual const DtString & overlayParent()
const;
676 virtual void setOverlayParent(
const DtString & overlayParent);
688 virtual void setObjectIdentifier(
const DtEntityIdentifier & objectId);
689 virtual const DtEntityIdentifier & objectIdentifier()
const;
693 virtual const DtString & objectIdentifierString()
const;
697 virtual bool isLocal()
const;
703 virtual void setPublishObject(
bool publishObject);
704 virtual bool publishObject()
const;
710 virtual DtString objectClassType()
const;
711 virtual void setObjectClassType(
const DtString & objectClassType);
715 virtual void clearVerticesChangedCallbacks();
719 virtual void clearRelativeVerticesChangedCallbacks();
723 virtual void clearPredicateCallbacks();
725 static void addSimObjectCreatorFcn(
const DtString & type,
739 void setEntityType(
const DtEntityType & entityType);
740 const DtEntityType & entityType()
const;
742 void setDestroyed(
bool destroyed);
743 bool isDestroyed()
const;
756 virtual void place(
const DtVector& location,
bool* dataAvailable = 0,
757 bool requireAllData =
false);
770 virtual void place(
const DtReal heading,
bool* dataAvailable = 0,
771 bool requireAllData =
false);
785 virtual void place(
const DtVector& location,
const DtReal heading,
786 bool* dataAvailable = 0,
bool requireAllData =
false);
788 const DtString & echelonIdString()
const;
801 virtual const DtObjectId & objectId()
const;
805 virtual bool isEmbarked()
const;
821 virtual DtTaitBryan orientationRelativeTo(
const DtTaitBryan&,
const DtVrfObject* relativeTo)
const;
828 virtual bool isEmbarkedOn(
const DtUUID& parent)
const;
837 void setAboutToBeRemoved(
bool);
838 bool aboutToBeRemoved()
const;
842 virtual DtOutputStream& objectConsoleDebug(
const DtString& channel =
"")
const;
843 virtual DtOutputStream& objectConsoleVerbose(
const DtString& channel =
"")
const;
844 virtual DtOutputStream& objectConsoleInfo(
const DtString& channel =
"")
const;
845 virtual DtOutputStream& objectConsoleWarn(
const DtString& channel =
"")
const;
846 virtual DtOutputStream& objectConsoleError(
const DtString& channel =
"")
const;
886 virtual void duplicateVrfSubComponentTypes();
889 virtual void restoreDuplicatedVrfSubComponentTypes();
893 virtual bool hasPlan()
const;
896 virtual bool executingPlan()
const;
899 virtual bool isCurrentlyTasked()
const;
902 virtual bool isEllipsoid()
const;
919 virtual DtU8 getNextEmitterSystemId();
922 static void setDefaultNotifyLevel(DtNotifyLevelType
level);
924 static DtNotifyLevelType defaultNotifyLevel();
933 virtual const ScriptInterfaceExtensions& scriptExtensions()
const;
937 virtual void regenerateUUIDForImport();
940 virtual std::string archiveState();
956 virtual bool convertToLocalObject(
DtString&
error,
const std::string& archivedState =
"");
963 bool awaitingHandoffCompletion()
const;
974 virtual bool prepareForHandoff();
988 bool createLocalObject =
true,
989 bool publishLocalObject =
true,
990 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
993 const DtString & objectName = DtString::nullString(),
994 const DtString & objectLabel = DtString::nullString(),
995 DtForceType forceType = DtForceOther,
996 const DtList* vertices = 0,
997 const DtTaitBryan* orientation = 0,
998 bool projection =
false,
999 bool closedFigure =
false,
1000 const DtAppearance& appearance = DtAppearance::nullAppearance(),
1001 const DtString & readerWriterName = DtString::nullString(),
1004 bool connectToRadioNetowrk =
true);
1011 bool createLocalObject =
true,
1012 bool publishLocalObject =
true,
1013 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
1016 const DtString & objectName = DtString::nullString(),
1017 const DtString & objectLabel = DtString::nullString(),
1018 DtForceType forceType = DtForceOther,
1019 const DtList* vertices = 0,
1020 const DtTaitBryan* orientation = 0,
1021 bool projection =
false,
1022 bool closedFigure =
false,
1023 const DtAppearance& appearance = DtAppearance::nullAppearance(),
1024 const DtString & readerWriterName = DtString::nullString(),
1027 bool connectToRadioNetowrk =
true);
1034 bool createLocalObject =
true,
1035 bool publishLocalObject =
true,
1036 const DtEntityIdentifier& objectIdentifier = DtEntityIdentifier::nullId(),
1039 const DtString & objectName = DtString::nullString(),
1040 const DtString & objectLabel = DtString::nullString(),
1041 DtForceType forceType = DtForceOther,
1042 const DtVector& location = DtVector::zero(),
1043 const DtTaitBryan* orientation = 0,
1044 bool projection =
false,
1045 bool closedFigure =
false,
1046 const DtAppearance& appearance = DtAppearance::nullAppearance(),
1047 const DtString & readerWriterName = DtString::nullString(),
1050 bool connectToRadioNetowrk =
true);
1059 static DtVrfObject* createAndInitForSimulationObjectGroup(
1061 double offsetRotation = 0.);
1066 static void verticesChangedCallback(
const DtVrfObject* obj,
1070 static void relativeVerticesChangedCallback(
const DtVrfObject* obj,
1081 static void readDRThresholdSettingsCallback(
1083 virtual void processReadDRThresholdSettings(
const DtSettingsObject* settings);
1087 virtual void addedToObjectManager();
1091 virtual void addObjectAboutToBeRemovedCallback(
1093 virtual void removeObjectAboutToBeRemovedCallback(
1095 virtual void invokeVrfObjectAboutToBeRemovedCallbacks();
1100 virtual void addObjectModifiedViaMessageCallback(
1102 virtual void removeObjectModifiedViaMessageCallback(
1104 virtual void invokeObjectModifiedViaMessageCallback();
1110 virtual void addNewSensorContactCallback(
1112 virtual void removeNewSensorContactCallback(
1114 virtual void invokeNewSensorContactCallbacks();
1119 virtual void addSetLocationCompleteCallback(
1121 virtual void removeSetLocationCompleteCallback(
1123 virtual void invokeSetLocationCompleteCallbacks();
1132 virtual void updateTerrainEmbeddedGeometry(
bool force =
false);
1143 virtual bool initializeNetInterface();
1146 virtual void setupStateRepository();
1149 virtual bool setupNetInterface();
1152 void emptyVertexList();
1155 void copyVertexList(
const DtList& orig);
1159 virtual void validateObjectType();
1166 virtual void initializeCommunicationInterfaceCallbacks();
1172 virtual void updateBoundingVolumeBasedOnPosture();
1175 virtual DtExtent computeExtent()
const;
1178 virtual void initializeObjectGeometryModel();
1181 virtual void cleanupItemsNeededForHandoff();
1184 virtual bool recreateItemsNeededForHandoff();
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
bool myAwaitingHandoffCompletion
Definition: vrfObject.h:1350
DtReflectedObject * myReflectedObject
Passed into constructor - held only to pass into create() function for virtual construction.
Definition: vrfObject.h:1226
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:1287
DtRwString myOverlayParent
Definition: vrfObject.h:1202
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:1320
Definition: vrfObjectNavInterface.h:18
std::pair< const DtVrfObject *, DtVrfObjectCallbackDataPair > DtVrfObjectCallbackDataPair2
Definition: vrfObject.h:233
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:1268
Definition: symbolString.h:20
static DtSimObjectFactory * theFactory
Definition: vrfObject.h:1192
DtRwObjectType myObjectType
passed in to constructor, held for SR construction
Definition: vrfObject.h:1198
Definition: navInterfaceManager.h:18
DtVrfObjectUUID myUUID
Definition: vrfObject.h:1333
DtVrfObjectCallbackList myObjectModifiedViaMessage
Definition: vrfObject.h:1285
virtual bool isVrfSimulated() const
Definition: vrfObject.h:502
DtRwEntityIdentifier myObjectIdentifier
Definition: vrfObject.h:1194
virtual bool objectValid()
Definition: vrfObject.h:138
ChangeFlag
Definition: vrfObject.h:219
DtRwVector myOvlTargetLocation
Definition: vrfObject.h:1249
Definition: reflectedExtAggregate.h:35
class DtSimRadio:
Definition: simRadio.h:25
DtSimObjectNetInterface * myNetInterface
Definition: vrfObject.h:1211
class DtRwObjectType:
Definition: rwObjectType.h:18
DtVrfObjectParameters * myParameterEntry
Definition: vrfObject.h:1308
DtTime myLastTerrainEmbeddedGeometryUpdateTime
Definition: vrfObject.h:1346
class DtObstacleAreaCompatilibility:
Definition: obstacleAreaCompatilibility.h:21
tbb::spin_rw_mutex myWeatherMutex
Definition: vrfObject.h:1328
tbb::spin_rw_mutex myIlluminationMutex
Definition: vrfObject.h:1321
Definition: vrfObject.h:223
DtRwVrfObjectName myMarkingText
Definition: vrfObject.h:1200
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:1334
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:139
Definition: vrfObject.h:225
DtScriptInterfaceHandler * myScriptInterfaceHandler
Definition: vrfObject.h:1240
Contains the DtLclVerticesNotEqualPredicate class declaration.
Definition: lclVerticesNotEqualPredicate.h:24
DtCallbackList< DtVrfObjectHandoffData & > DtVrfObjectHandoffCallbackList
Definition: vrfObject.h:120
DtU8 myNextEmitterSystemId
Definition: vrfObject.h:1300
DtExtent myExtent
Definition: vrfObject.h:1187
int changedFlag
Definition: vrfObject.h:96
DtRwVector myOvlStartPoint
Definition: vrfObject.h:1250
DtRwBoolean myOvlObstacleIsBreached
Definition: vrfObject.h:1253
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:134
DtVrfObjectCallbackList myRelativeVerticesChangedCallbackList
List of functions to call when some object data has changed.
Definition: vrfObject.h:1274
Definition: vrfObject.h:109
DtGeodeticCoord myLastIlluminationPosition
Definition: vrfObject.h:1318
Definition: readerWriterRegistry.h:39
DtVrfObjectCallbackList myAboutToBeRemovedCallbackList
Definition: vrfObject.h:1282
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:1237
std::list< DtLuaScriptInterfaceExtension::CreatorUserPair > ScriptInterfaceExtensions
Definition: vrfObject.h:236
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:224
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:1229
bool myMutableWeatherObjectUpdatedThisTick
Definition: vrfObject.h:1327
DtRangeRingsParametersPublisher * myRangeRingsParametersPublisher
This object will manage range rings from state and parameter data.
Definition: vrfObject.h:1307
DtSimRadio * myRadio
Definition: vrfObject.h:1241
DtVrfObjectCommunicationInterface * myCommunicationInterface
Definition: vrfObject.h:1296
File: rwEntityIdentifier.h.
Definition: rwEntityIdentifier.h:23
DtNavInterfaceManager * myNavInterfaceManager
Definition: vrfObject.h:1298
DtSharedVrfObjectReference mySharedReference
Definition: vrfObject.h:1335
Definition: settingsObject.h:27
DtAppearance myAppearance
Definition: vrfObject.h:1232
DtSharedVrfObjectReference class will allocate an empty DtVrfObjectReference if one is not assigned s...
Definition: vrfObjectReference.h:102
Definition: vrfObject.h:222
const bool myConnectToRadioNetwork
Definition: vrfObject.h:1338
Description: Readable, Writable uuid string.
Definition: rwUUID.h:419
bool aboutToBeRemoved() const
Definition: vrfObject.h:1358
class DtIfModifyVrfObject:
Definition: ifModifyVrfObject.h:50
Definition: objectType.h:27
virtual void echelonIdChanged()
Definition: vrfObject.h:799
bool myIsVrfSimulatedObject
Returns true if this is a vrf simulated object.
Definition: vrfObject.h:1222
List of DtRadioDescriptor subclasses that can be read from a RW type file.
Definition: radioDescriptorList.h:27
DtMovingObjectParameters * myMovingObject
Definition: vrfObject.h:1309
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:1204
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:1265
DtRwVector myOvlEndPoint
Definition: vrfObject.h:1251
bool myExtentInvalid
lazy per-tick cache of extent
Definition: vrfObject.h:1188
bool myAboutToBeRemoved
Set to true if this object is about to be removed from the object manager list.
Definition: vrfObject.h:1290
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:87
virtual void invalidateObject()
Definition: vrfObject.h:139
Definition: coordSystem.h:54
double myLastTimeWeatherAreaCalculated
Definition: vrfObject.h:1317
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:1248
#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:1336
DtVrfObjectDeletionTracker(const DtVrfObject *simObject)
Definition: vrfObject.h:131
DtVrfObjectDeletionHandle myObjectDeletionHandle
Definition: vrfObject.h:1330
double myLastTimeIlluminationCalculated
Definition: vrfObject.h:1316
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtObstacleAreaCompatilibility myOvlObstacleArea
Definition: vrfObject.h:1252
bool myDuplicatedSubComponents
Definition: vrfObject.h:1349
DtVrfObjectHandoffCallbackList myObjectHandoffCallbackList
List of callbacks that will be invoked at points during object handoff.
Definition: vrfObject.h:1280
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:1218
DtObjectConsole * myObjectConsole
Definition: vrfObject.h:1292
bool myProjection
Definition: vrfObject.h:1230
boost::shared_ptr< DtVrfObjectDeletionTracker > DtVrfObjectDeletionHandle
Definition: vrfObject.h:146
DtSetDataManager * mySetDataManager
Definition: vrfObject.h:1294
Definition: vrfObject.h:93
DtTerrainGeometryHandle * myTerrainEmbeddedGeometry
If the geometry for this object is embedded in the terrain this handle allows control.
Definition: vrfObject.h:1345
DtList myVertices
Definition: vrfObject.h:1228
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:1348
bool myWeatherIsGlobal
Definition: vrfObject.h:1326
bool mySimulationCapable
Definition: vrfObject.h:1337
DtString myMutableGlobalIdStringCache
Definition: vrfObject.h:1205
class DtVrfObjectManager:
Definition: vrfObjectManager.h:201
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:1235
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:1283
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:1315
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:1209
DtCallbackList< const DtVrfObjectCallbackData & > DtVrfObjectDataChangeCallbackList
Definition: vrfObject.h:99
DtVrfObjectPlanManager * myVrfObjectPlanManager
Definition: vrfObject.h:1243
Contains the declaration of the DtExtent class.
DtSimTaskManager * myTaskManager
Definition: vrfObject.h:1239
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:1190
DtSimComponentManager * myComponentManager
Definition: vrfObject.h:1242
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:102
std::list< boost::shared_ptr< DtVrfObjectPredicateCallbackInfo > > myPredicateCallbackList
List of predicate function callbacks.
Definition: vrfObject.h:1260
DtVrfObjectManager * mySimObjectManager
Definition: vrfObject.h:1207
ScriptInterfaceExtensions myScriptInterfaceExtensions
Definition: vrfObject.h:1304
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:1227
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:1353
DtVrfObjectDataChangeCallbackList myObjectDataChangedCallbackList
List of callback functions to call when object data has changed.
Definition: vrfObject.h:1277
DtSharedVrfObjectReference myWeatherObject
The weather object retrieved the last time illumination was calculated.
Definition: vrfObject.h:1325
static int theDefaultNotifyLevel
Definition: vrfObject.h:1311
std::pair< DtVrfObjectCallbackFunction, void * > DtVrfObjectCallbackDataPair
Definitions of container types used in the postInitFromParameters callback mechanism.
Definition: vrfObject.h:232
DtVrfObjectTerrainPreloadManager * myTerrainPreloadManager
Definition: vrfObject.h:1302
Specialized version of DtRwString.
Definition: vrfObject.h:152
class DtLocalVertexList:
Definition: localVertexList.h:20
int myPotentialLuaScripts
Definition: vrfObject.h:1313
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:1284
Definition: vrfObject.h:112
Definition: vrfObject.h:101
class DtSimObjectFactory:
Definition: simObjectFactory.h:68
Represents a feature geometry.
Definition: featureGeometry.h:35
bool myUseDayNightIlluminationModel
Definition: vrfObject.h:1331
DtAttachedTerrain myObjectGeometryModel
The object geometry that this object can use to see if it intersects with a higher level fidelity mod...
Definition: vrfObject.h:1342
static const DtFilename & appPath()
Gets the current working directory.
bool myClosedFigure
Definition: vrfObject.h:1231
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:1195
class DtIfCreateVrfObject:
Definition: ifCreateVrfObject.h:84
DtRwBoolean myPublishObject
Definition: vrfObject.h:1213
const DtVrfObject * object
Definition: vrfObject.h:95
tbb::spin_mutex myPredicateCallbackListMutex
Definition: vrfObject.h:1261
DtRwString myObjectLabel
Definition: vrfObject.h:1201