18 #include <boost/signals2.hpp>
19 #include <matrix/vlVector.h>
22 #include <vlpi/appearance.h>
23 #include <vlpi/disEnums.h>
24 #include <matrix/vlDcm.h>
25 #include <matrix/vlTaitBryan.h>
28 #include <tbb/spin_rw_mutex.h>
33 namespace MAKVRinTerra
35 class DtFeatureGeometry;
58 class Dt3dBoundingVolume;
59 class DtEntityIdentifier;
100 DtVector localBoundingVolumeCenterPosition()
const;
105 void expandExtent(
DtExtent& extent)
const;
115 virtual bool isLocal()
const;
124 bool embarkedOnHighFidelityObject()
const;
133 bool isOnTopOf(
const DtSimObject* o,
double d)
const;
135 bool isOnTopOf(
const DtSimObject* o,
double d,
const DtVector& position)
const;
145 return mySimulationServices;
160 double totalMass()
const;
166 DtVector locationRelativeTo(
const DtVector&,
const DtSimObject* relativeTo)
const;
170 DtVector velocityRelativeTo(
const DtVector&,
const DtSimObject* relativeTo)
const;
174 DtVector accelerationRelativeTo(
const DtVector&,
const DtSimObject* relativeTo)
const;
178 DtTaitBryan orientationRelativeTo(
const DtTaitBryan&,
const DtSimObject* relativeTo)
const;
185 double distanceToLocalVector(
const DtVector&)
const;
207 virtual void clearDecorators();
215 void tickDecorators();
216 virtual void createNavigationDecorator();
218 virtual void setupVrfObjectParameters();
222 void attachmentsChanged();
225 virtual void hostChanged(
const DtUUID& oldHost,
const DtUUID& newHost);
228 virtual void usingParameterSource(
const DtString&);
235 void resetUUID(
const DtUUID&);
333 #include "simObject.inl"
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:64
NOTE: This entire class is deprecated, in favor of Dt3dChord.
Definition: chord.h:40
bool checkAndConnectForVrfStateComponent()
This class is used to interface with the terrain a particular entity is "attached" to...
Definition: attachedTerrain.h:57
Objects may contain a collection of other objects, such as overlays or pseudo-aggregate entities...
Definition: subordinateManager.h:43
std::map< std::string, DtSimObjectDecorator * > SimObjectDecorators
Decorator members.
Definition: simObject.h:242
DtSimObjectReference mySuperior
Superior.
Definition: simObject.h:271
double distSquaredTo(const DtVector &) const
Overall kinematic state.
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
const DtUUID & uuid() const
@ Convenience accessors for various pieces of state Data
const DtSimulationServices * mySimulationServices
Definition: simObject.h:238
DtVrfSimulatedSimObjectFacade * myVrfSimulatedSimObjectFacade
Definition: simObject.h:281
virtual Dt3dBoundingVolume boundingVolume() const
If you use a list of object names to archive which objects are part of a controller (or any object) u...
Definition: simObjectReferenceList.h:120
DtSimObjectReference mySimObjectReference
Back pointer to this objects reference.
Definition: simObject.h:274
tbb::spin_rw_mutex mySimObjectReferenceMutex
Definition: simObject.h:275
VRF4API_METHOD bool operator==(const DtSimObject *rhs) const
This is the deprecated API that can be used as a reference to migrate 4.X code to 5...
Definition: simObject.h:292
virtual void makeInvalid()
Make this invalid by clearing the myExternalCurrentFrameState. This will also set the myIsDeleted fla...
Contains the DtUUID class declaration.
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
Definition: navigationDecorator.h:18
Description: This repository is an internal repository accessible only by local objects. It holds all information that is common to all the forms of all entity/aggregate/control objects within VR-Forces.
Definition: vrfObjectStateRepository.h:91
ExtentInformation myExtentInformation
Definition: simObject.h:258
const DtSimulationServices * simulationServices() const
Definition: simObject.h:143
DtAggregateSimObjectFacade * myAggregateSimObjectFacade
Definition: simObject.h:279
const DtVrfObjectParameters * parameters() const
VR-Forces parameters.
Definition: simObject.h:149
This class represents the console for an individual object. It owns a set of streams for various noti...
Definition: objectConsole.h:49
The DtPhysicalWorld is the primary interface to and manager of all of the "physical" aspects of the s...
Definition: physicalWorld.h:112
Definition: coordSystem.h:54
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:398
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual void setUUID(const DtUUID &)
DtVrfObjectParameters * myDuplicateParameters
Definition: simObject.h:263
class DtVertexList:
Definition: vertexList.h:22
const DtVrfObjectParameters * myParameters
Referenced from the simulation services object database based on entity type.
Definition: simObject.h:262
virtual void superiorChanged()
Definition: stateData.h:301
Definition: rangeItem.h:206
This class maintains a rectangular bounding volume and an ordered list of vertices describing the phy...
Definition: vrfObjectGeometry.h:39
virtual void frameAdvanced()
Overall kinematic state.
SimObjectDecorators mySimObjectDecorators
Decorator members.
Definition: simObject.h:243
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: stateDataWrapper.h:49
This is a convenience list that will add DtSimObjectReference objects and modify the list as objects ...
Definition: simObjectReferenceList.h:25
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
This class is the central access point for all current-frame state of all objects in the simulation i...
Definition: simObjectManager.h:32
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:80
bool isTopLevel() const
Convenience method to see if this is a top level object. It is if it is local and the entity type is ...
Contains the declaration of the DtExtent class.
DtSimObjectReferenceList * myAttachments
Attachments.
Definition: simObject.h:266
virtual void stateDataAdded(DtStateData *)
Definition: decoratorBase.h:30
DtPlatformSimObjectFacade * myPlatformSimObjectFacade
Definition: simObject.h:280
boost::signals2::scoped_connection myAttachmentsChangedConnection
Definition: simObject.h:267
Contains the DtSimObjectReference class declaration.
tbb::spin_rw_mutex mySimObjectDecoratorMutex
Decorator members.
Definition: simObject.h:244
A list of properties. A DtPropertyInterface object that is a specialized version of DtRwVariableBindi...
Definition: rwProperties.h:122
VRF4API_METHOD DtSimObjectReference sharedReference() const
This is the deprecated API that can be used as a reference to migrate 4.X code to 5...
Definition: simObject.h:297
class DtLocalVertexList:
Definition: localVertexList.h:20
#define VRF4API_METHOD
Include this header file to allow for the definition/usage of the ability to mark something as deprec...
Definition: vrf4XAPI.h:23
boost::signals2::scoped_connection myHostChangedConnection
Definition: simObject.h:268
virtual void completeSetup()
Represents a feature geometry.
Definition: featureGeometry.h:40
DtAttachedTerrain * myTerrainAttachedTo
Definition: simObject.h:277
This DtVrfSimulatedSimObjectFacadeInterface class will provide accessors for data that is available t...
Definition: vrfSimulatedSimObjectFacade.h:27
This DtAggregateSimObjectFacadeInterface class will provide API functionality for aggregate level cal...
Definition: aggregateSimObjectFacade.h:25