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

class DtIfCreateVrfObject:

Instances of DtIfCreateVrfObject are the message content for create vrf object messages sent from one VR-Forces process to another. The purpose of the message is to request that a particular VR-Forces process instantiate and become responsible for locally simulating a new vrf object.

Content-Type: DtCreateVrfObjectMessageType

Parameters: vrf process address - A DtSimulationAddress identifying the particular VR-Forces back-end to create the object.

object name - A DtString used to uniquely identify the object. This string must be unique for all objects in the exercise.

object type - The DtEntityType of the new entity. DtEntityType is an extension of the DIS/RPR enumerated DtEntityType (from objTypeEnums.h).

force type - The DtForceType value for the new entity (from disE- nums.h).

object label - A DtString associated with the new object. This string provides an additional means to identify an object without the strict uniqueness requirement of object name.

extended labels - A key/value pair that will assign a label to a label index. Index 0 is reserved, so, that will be ignored if used

position - A DtVector that is the starting location of the object in geocentric coordinates. Set the position for those objects that have a single vertex (e.g. waypoints, entities).

heading - A DtReal value that is the initial heading of the object in radians. A value of 0.0 is north and positive values are clockwise.

vertices - A DtList of the DtVectors that make up the object's geom- etry (i.e. the vertices that make up the points along a route). Note that position is just an alias for the first vertex. Do not call setPosi- tion() if you have an object with multiple vertices (call addVertex() to set up the object's geometry instead). Vertices must be specified in geocentric coordinates.

projection - A bool flag indicating whether or not the Z elements in the object's vertex list have meaning. For example, phase lines do not have meaningful Z elements.

closed figure - A bool flag indicating whether the object's vertices make up a closed figure (i.e. does the last vertex connect with the first?). A control area is an example of an object that is a closed figure.

appearance - A DtAppearance indicating the initial appearance of the object (e.g. damage state, frozen status, concealed).

create subobjects - A bool flag indicating whether or not you wish to have sub-object created. The parameter file may contain a list of subobjects. When building from the bottom up (for example, using AggregateAs or explicitly calling addSubordinate) then the subobjects in the parameter list should be ignored.

Inheritance diagram for DtIfCreateVrfObject:
Inheritance graph
[legend]

Public Member Functions

 DtIfCreateVrfObject ()
 
virtual ~DtIfCreateVrfObject () override
 
 DtIfCreateVrfObject (const DtIfCreateVrfObject &orig)
 
DtIfCreateVrfObjectoperator= (const DtIfCreateVrfObject &orig)
 
virtual DtSimInterfaceContentclone () const override
 
virtual int type () const override
 
virtual unsigned long requestId () const
 
virtual void setRequestId (unsigned long requestId)
 
virtual void setUUID (const DtUUID &)
 
virtual const DtUUIDuuid () const
 
virtual void setVrfProcessAddress (const DtSimulationAddress &address)
 
virtual const DtSimulationAddress & vrfProcessAddress () const
 
virtual void setMarkingText (const DtString &objectName)
 
virtual const DtStringmarkingText () const
 
virtual void setMarkingTextPrefix (const DtString &objectName)
 
virtual const DtStringmarkingTextPrefix () const
 
virtual void setObjectType (const DtEntityType &objectType)
 
virtual const DtEntityType & objectType () const
 
virtual void setForceType (const DtForceType forceType)
 
virtual DtForceType forceType () const
 
virtual void setObjectLabel (const DtString &objectLabel)
 
virtual const DtStringobjectLabel () const
 
virtual void setExtendedLabels (const std::map< int, DtString > &extendedLabels)
 
virtual const std::map< int,
DtString > & 
extendedLabels () const
 
virtual void setOverlayParent (const DtString &overlayParent)
 
virtual const DtStringoverlayParent () const
 
virtual DtVector position () const
 
virtual void setPosition (const DtVector &position)
 
virtual DtReal heading () const
 
virtual void setHeading (DtReal heading)
 
virtual DtReal pitch () const
 
virtual void setPitch (DtReal pitch)
 
virtual bool isPitchSpecified () const
 
virtual void clearPitchSpecified ()
 
virtual const std::vector
< DtVector > & 
vertexList () const
 
virtual const std::vector
< DtVector > & 
vertices () const
 
virtual void setVertices (const std::vector< DtVector > &vertices)
 
virtual void setVertices (const DtList &vertices)
 
virtual void addVertex (const DtVector &vertex)
 
virtual bool projection () const
 
virtual void setProjection (bool projection)
 
virtual bool closedFigure () const
 
virtual void setClosedFigure (bool closedFigure)
 
virtual DtAppearance appearance () const
 
virtual void setAppearance (const DtAppearance &appearance)
 
virtual bool createSubObjects () const
 
virtual void setCreateSubObjects (bool createSubObjects)
 
virtual bool addToOrganization () const
 
virtual void setAddToOrganization (bool addToOrg)
 
virtual bool clampToGround () const
 
virtual void setClampToGround (bool clamp)
 
virtual DtAggregateState initialAggregateState () const
 
virtual void setInitialAggregateState (DtAggregateState aggregateState)
 
virtual const std::list
< DtAdminContent * > & 
initialAdminContent () const
 
virtual void setInitialAdminContent (const std::list< DtAdminContent * > &adminContent)
 
virtual void addInitialAdminContent (DtAdminContent *adminContent)
 
virtual const std::list
< DtSimInterfaceContent * > & 
initialInterfaceContent () const
 
virtual void setInitialInterfaceContent (const std::list< DtSimInterfaceContent * > &adminContent)
 
virtual void addInitialInterfaceContent (DtSimInterfaceContent *adminContent)
 
virtual void setAddToOrbat (bool)
 
virtual bool addToOrbat () const
 
virtual void setSuperior (const DtUUID &)
 
virtual const DtUUIDsuperior () const
 
void setStartPosition (const DtVector &position)
 
DtVector startPosition () const
 
void setEndPosition (const DtVector &position)
 
DtVector endPosition () const
 
virtual void setGlobalId (const DtString &)
 
virtual const DtStringglobalId () const
 
virtual void setExtendedData (const std::map< std::string, std::string > &)
 
virtual void setExtendedData (const std::map< DtString, DtString > &)
 
virtual void setExtendedData (const DtString &keyword, const DtString &data)
 
virtual const std::map
< std::string, std::string > & 
extendedData () const
 
virtual void setUserData (const DtString &userData)
 
virtual DtString userData () const
 
virtual int netRepSize () const override
 
virtual bool setFromNet (const char *contentBuffer, unsigned contentSize) override
 
virtual bool setToNet () override
 
virtual void printDataToString (DtString &str) override
 
virtual bool isValid () const
 
virtual DtString initialFormation () const
 
virtual void setInitialFormation (const DtString &formation)
 
virtual bool publishObject () const
 
virtual void setPublishObject (bool)
 
virtual bool connectToRadioNetwork () const
 
virtual void setConnectToRadioNetwork (bool)
 
- Public Member Functions inherited from DtSimInterfaceContent
virtual ~DtSimInterfaceContent ()
 
virtual bool update (const DtSimInterfaceContent *data)
 
virtual charnetRep ()
 
virtual void printContentType (DtString &str)
 
virtual void setUseSessionId (bool yesNo)
 
virtual bool useSessionId () const
 

Static Public Member Functions

static DtSimInterfaceContentcreator ()
 
- Static Public Member Functions inherited from DtSimInterfaceContent
static DtSimInterfaceContentcreateInterfaceContent (int type)
 
static void addInterfaceContentCreatorFcn (int type, DtInterfaceContentCreatorFcn fcn)
 
static void setFactory (DtInterfaceContentFactory *factory)
 
static DtInterfaceContentFactoryfactory ()
 
static void registerContentTypePrinter (DtSimInterfaceContentTypePrinterFcn printFcn)
 

Protected Attributes

DtLocalObjectCreateInformation myLocalObjectCreateInformation
 
DtSimulationAddress myVrfProcessAddress
 
bool myPitchSpecified
 
- Protected Attributes inherited from DtSimInterfaceContent
charmyNetRep
 
bool myUseSessionId
 

Additional Inherited Members

- Protected Member Functions inherited from DtSimInterfaceContent
 DtSimInterfaceContent ()
 
 DtSimInterfaceContent (const DtSimInterfaceContent &orig)
 
const DtSimInterfaceContentoperator= (const DtSimInterfaceContent &orig)
 
virtual charcreateNetworkBuffer ()
 
- Static Protected Attributes inherited from DtSimInterfaceContent
static DtInterfaceContentFactorymyFactory
 
static
DtSimInterfaceContentTypePrinterFcn 
theContentTypePrinterFcn
 

Constructor & Destructor Documentation

DtIfCreateVrfObject::DtIfCreateVrfObject ( )

default constructor

virtual DtIfCreateVrfObject::~DtIfCreateVrfObject ( )
overridevirtual

destructor

DtIfCreateVrfObject::DtIfCreateVrfObject ( const DtIfCreateVrfObject orig)

copy constructor

Member Function Documentation

DtIfCreateVrfObject& DtIfCreateVrfObject::operator= ( const DtIfCreateVrfObject orig)

assignment operator

virtual DtSimInterfaceContent* DtIfCreateVrfObject::clone ( ) const
overridevirtual

Returns a newly created instance of a DtIfCreateVrfObject.

Implements DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual int DtIfCreateVrfObject::type ( ) const
overridevirtual

Returns the string type of message, DtCreateVrfObjectMessageType (defined in msgTypes.h).

Implements DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual unsigned long DtIfCreateVrfObject::requestId ( ) const
virtual

Set/get the request Id for the message. Request Id is used to associate this message with the DtIfVrfObjectCreated response message.

virtual void DtIfCreateVrfObject::setRequestId ( unsigned long  requestId)
virtual
virtual void DtIfCreateVrfObject::setUUID ( const DtUUID )
virtual

Use this UUID to create object (if specified). If the UUID exists will be regenerated on creation.

virtual const DtUUID& DtIfCreateVrfObject::uuid ( ) const
virtual
virtual void DtIfCreateVrfObject::setVrfProcessAddress ( const DtSimulationAddress &  address)
virtual

Set/get the address of the VR-Forces process that we want to create the new vrf object.

virtual const DtSimulationAddress& DtIfCreateVrfObject::vrfProcessAddress ( ) const
virtual
virtual void DtIfCreateVrfObject::setMarkingText ( const DtString objectName)
virtual

Set/get the object name of the vrf object to create. Note that if the object name length is > 255 characters, it will be trimmed to 255 characters.

Reimplemented in DtIfModifyVrfObject.

virtual const DtString& DtIfCreateVrfObject::markingText ( ) const
virtual
virtual void DtIfCreateVrfObject::setMarkingTextPrefix ( const DtString objectName)
virtual

Set/get the prefix for the object name of the vrf object to create. If markingText is not set, this prefix will be used to generate a unique object name.

virtual const DtString& DtIfCreateVrfObject::markingTextPrefix ( ) const
virtual
virtual void DtIfCreateVrfObject::setObjectType ( const DtEntityType &  objectType)
virtual

Set/get the object type of the vrf object to create.

Reimplemented in DtIfModifyVrfObject.

virtual const DtEntityType& DtIfCreateVrfObject::objectType ( ) const
virtual
virtual void DtIfCreateVrfObject::setForceType ( const DtForceType  forceType)
virtual

Set/get the force type of the vrf object to create.

Reimplemented in DtIfModifyVrfObject.

virtual DtForceType DtIfCreateVrfObject::forceType ( ) const
virtual
virtual void DtIfCreateVrfObject::setObjectLabel ( const DtString objectLabel)
virtual

Set/get the object label of the vrf object to create.

Reimplemented in DtIfModifyVrfObject.

virtual const DtString& DtIfCreateVrfObject::objectLabel ( ) const
virtual
virtual void DtIfCreateVrfObject::setExtendedLabels ( const std::map< int, DtString > &  extendedLabels)
virtual

Set/get the object label of the vrf object to create.

Reimplemented in DtIfModifyVrfObject.

virtual const std::map<int, DtString>& DtIfCreateVrfObject::extendedLabels ( ) const
virtual
virtual void DtIfCreateVrfObject::setOverlayParent ( const DtString overlayParent)
virtual

Sets the overlay parent of this object.

Reimplemented in DtIfModifyVrfObject.

virtual const DtString& DtIfCreateVrfObject::overlayParent ( ) const
virtual
virtual DtVector DtIfCreateVrfObject::position ( ) const
virtual

In geocentric coordinates.

virtual void DtIfCreateVrfObject::setPosition ( const DtVector &  position)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual DtReal DtIfCreateVrfObject::heading ( ) const
virtual

0 is north, clockwise, in radians.

virtual void DtIfCreateVrfObject::setHeading ( DtReal  heading)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual DtReal DtIfCreateVrfObject::pitch ( ) const
virtual

Set to specify pitch. Call the clearPitchSpecified method if the pitch does not want to be specified. Note this will only have an effect on non ground-clamped created entities. The default is 0 pitch and pitch not specified. The pitch is in topographic coordinates. Note this will not be used in modification of the object. This is only for create and only for individual simulation objects.

virtual void DtIfCreateVrfObject::setPitch ( DtReal  pitch)
virtual
virtual bool DtIfCreateVrfObject::isPitchSpecified ( ) const
virtual
virtual void DtIfCreateVrfObject::clearPitchSpecified ( )
virtual
virtual const std::vector<DtVector>& DtIfCreateVrfObject::vertexList ( ) const
virtual

This is where the actually object geometry goes position() is just an alias for the first vertex. In geocentric coordinates.

virtual const std::vector<DtVector>& DtIfCreateVrfObject::vertices ( ) const
virtual

Backwards compatible access to vertexList. Use vertexList() instead.

virtual void DtIfCreateVrfObject::setVertices ( const std::vector< DtVector > &  vertices)
virtual
virtual void DtIfCreateVrfObject::setVertices ( const DtList &  vertices)
virtual
virtual void DtIfCreateVrfObject::addVertex ( const DtVector &  vertex)
virtual

Add a vertex to the end of the vertex list.

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::projection ( ) const
virtual

Do the Z elements of the vectors in the vertex list have meaning?

virtual void DtIfCreateVrfObject::setProjection ( bool  projection)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::closedFigure ( ) const
virtual

Does the last vertex connect back to the first? Obviously, this is undefined for a single vertex (but I suppose an argument could be made for that being a closed figure...)

virtual void DtIfCreateVrfObject::setClosedFigure ( bool  closedFigure)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual DtAppearance DtIfCreateVrfObject::appearance ( ) const
virtual

Appearance.

virtual void DtIfCreateVrfObject::setAppearance ( const DtAppearance &  appearance)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::createSubObjects ( ) const
virtual

Create SubObjects. The parameter file may contain a list of subobjects. When building from the bottom up (for example, using AggregateAs or explicitly calling addSubordinate) then the subobjects in the parameter list should be ignored. Use this flag to indicate whether you wish to have sub objects created.

virtual void DtIfCreateVrfObject::setCreateSubObjects ( bool  createSubObjects)
virtual
virtual bool DtIfCreateVrfObject::addToOrganization ( ) const
virtual

If True (the default) and the object being created is an orgainzed object type (as specified by the is-organized flag in the OPD file), the newly created object will be added to the organization manager directly below the force level aggregate of this object's force. Otherwise, it will not be added to the organization manager at all, and the caller should make a subsequent call or message to place it in the organization hierarchy.

virtual void DtIfCreateVrfObject::setAddToOrganization ( bool  addToOrg)
virtual
virtual bool DtIfCreateVrfObject::clampToGround ( ) const
virtual

If True (the default) the object will be created and placed on the nearest polygon. Otherwise, it will be created and then placed at the altitude specified in the position. Subsurface entities will be constrained between the water surface and bottom.

virtual void DtIfCreateVrfObject::setClampToGround ( bool  clamp)
virtual
virtual DtString DtIfCreateVrfObject::initialFormation ( ) const
virtual

The formation name to set when creating an aggregate. Not used for non-aggregate objects. Default is DtString::nullString().

virtual void DtIfCreateVrfObject::setInitialFormation ( const DtString formation)
virtual

The formation name to set when creating an aggregate. Not used for non-aggregate objects. Default is DtString::nullString().

virtual bool DtIfCreateVrfObject::publishObject ( ) const
virtual

Sets whether or not to publish the object on the network once created. Default is true.

virtual void DtIfCreateVrfObject::setPublishObject ( bool  )
virtual

Sets whether or not to publish the object on the network once created. Default is true.

virtual bool DtIfCreateVrfObject::connectToRadioNetwork ( ) const
virtual

Sets whether or not the object will be connected to any applicable radio networks on creation. This defaults to true.

virtual void DtIfCreateVrfObject::setConnectToRadioNetwork ( bool  )
virtual

Sets whether or not the object will be connected to any applicable radio networks on creation. This defaults to true.

virtual DtAggregateState DtIfCreateVrfObject::initialAggregateState ( ) const
virtual

Set/get the initial aggregate state when creating an aggregate. Not used for non-aggregate objects. Default is DtDisaggregated.

virtual void DtIfCreateVrfObject::setInitialAggregateState ( DtAggregateState  aggregateState)
virtual
virtual const std::list<DtAdminContent*>& DtIfCreateVrfObject::initialAdminContent ( ) const
virtual

Set any Admin Content messages passed on initialization.

virtual void DtIfCreateVrfObject::setInitialAdminContent ( const std::list< DtAdminContent * > &  adminContent)
virtual
virtual void DtIfCreateVrfObject::addInitialAdminContent ( DtAdminContent adminContent)
virtual
virtual const std::list<DtSimInterfaceContent*>& DtIfCreateVrfObject::initialInterfaceContent ( ) const
virtual

Set any Interface Content messages passed on initialization.

virtual void DtIfCreateVrfObject::setInitialInterfaceContent ( const std::list< DtSimInterfaceContent * > &  adminContent)
virtual
virtual void DtIfCreateVrfObject::addInitialInterfaceContent ( DtSimInterfaceContent adminContent)
virtual
virtual void DtIfCreateVrfObject::setAddToOrbat ( bool  )
virtual

Whether or not this item (if it can be) is also added to the orbat. Default is false.

virtual bool DtIfCreateVrfObject::addToOrbat ( ) const
virtual
virtual void DtIfCreateVrfObject::setSuperior ( const DtUUID )
virtual

Sets the unit which should be the superior of this object.

virtual const DtUUID& DtIfCreateVrfObject::superior ( ) const
virtual
void DtIfCreateVrfObject::setStartPosition ( const DtVector &  position)

These are here for back compatibility and should be removed after the next release.

DtVector DtIfCreateVrfObject::startPosition ( ) const
void DtIfCreateVrfObject::setEndPosition ( const DtVector &  position)
DtVector DtIfCreateVrfObject::endPosition ( ) const
virtual void DtIfCreateVrfObject::setGlobalId ( const DtString )
virtual

Sets the global id (HLA) of the object on creation. This name is subject to verification by the RTI so might not be assigned. In DIS this will be translated to an entity id. If the sttring is not of site:host:entity then it will be assigned an entity id. If the global id cannot be assigned by the RTI an new id will be assigned. This parameter is a DtString rather than the native class type due to the fact that this message is protocol indepenent. The default to generate new for each object.

Reimplemented in DtIfModifyVrfObject.

virtual const DtString& DtIfCreateVrfObject::globalId ( ) const
virtual

Reimplemented in DtIfModifyVrfObject.

virtual void DtIfCreateVrfObject::setExtendedData ( const std::map< std::string, std::string > &  )
virtual

Reimplemented in DtIfModifyVrfObject.

virtual void DtIfCreateVrfObject::setExtendedData ( const std::map< DtString, DtString > &  )
virtual
virtual void DtIfCreateVrfObject::setExtendedData ( const DtString keyword,
const DtString data 
)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual const std::map<std::string, std::string>& DtIfCreateVrfObject::extendedData ( ) const
virtual
virtual void DtIfCreateVrfObject::setUserData ( const DtString userData)
virtual

Reimplemented in DtIfModifyVrfObject.

virtual DtString DtIfCreateVrfObject::userData ( ) const
virtual
virtual int DtIfCreateVrfObject::netRepSize ( ) const
overridevirtual

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::setFromNet ( const char contentBuffer,
unsigned  contentSize 
)
overridevirtual

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::setToNet ( )
overridevirtual

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual void DtIfCreateVrfObject::printDataToString ( DtString str)
overridevirtual

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

static DtSimInterfaceContent* DtIfCreateVrfObject::creator ( )
static
virtual bool DtIfCreateVrfObject::isValid ( ) const
virtual

Calls down to the myLocalObjectCreateInformation to make sure this object is valid to create.

Member Data Documentation

DtLocalObjectCreateInformation DtIfCreateVrfObject::myLocalObjectCreateInformation
protected
DtSimulationAddress DtIfCreateVrfObject::myVrfProcessAddress
protected
bool DtIfCreateVrfObject::myPitchSpecified
protected

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

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