VR-Forces 4.0.4 Class Documentation
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtIfCreateVrfObject Class Reference

class DtIfCreateVrfObject: More...

Inheritance diagram for DtIfCreateVrfObject:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 DtIfCreateVrfObject ()
 default constructor
virtual ~DtIfCreateVrfObject ()
 destructor
 DtIfCreateVrfObject (const DtIfCreateVrfObject &orig)
 copy constructor
DtIfCreateVrfObjectoperator= (const DtIfCreateVrfObject &orig)
 assignment operator
virtual DtSimInterfaceContentclone () const
 Returns a newly created instance of a DtIfCreateVrfObject.
virtual int type () const
 Returns the string type of message, DtCreateVrfObjectMessageType (defined in msgTypes.h).
virtual unsigned long requestId () const
 Set/get the request Id for the message.
virtual void setRequestId (unsigned long requestId)
virtual void setVrfProcessAddress (const DtSimulationAddress &address)
 Set/get the address of the VR-Forces process that we want to create the new vrf object.
virtual const DtSimulationAddress & vrfProcessAddress () const
virtual void setObjectName (const DtString &objectName)
 Set/get the object name of the vrf object to create.
virtual const DtStringobjectName () const
virtual void setObjectType (const DtObjectType &objectType)
 Set/get the object type of the vrf object to create.
virtual const DtObjectTypeobjectType () const
virtual void setForceType (const DtForceType forceType)
 Set/get the force type of the vrf object to create.
virtual DtForceType forceType () const
virtual void setObjectLabel (const DtString &objectLabel)
 Set/get the object label of the vrf object to create.
virtual const DtStringobjectLabel () const
virtual const DtVectorposition () const
 In geocentric coordinates.
virtual void setPosition (const DtVector &position)
virtual DtReal heading () const
 0 is north, clockwise, in radians.
virtual void setHeading (DtReal heading)
virtual const std::vector
< DtVector > & 
vertexList () const
 This is where the actually object geometry goes position() is just an alias for the first vertex.
virtual const DtList & vertices () const
 Backwards compatible access to vertexList.
virtual void addVertex (const DtVector &vertex)
 Add a vertex to the end of the vertex list.
virtual bool projection () const
 Do the Z elements of the vectors in the vertex list have meaning?
virtual void setProjection (bool projection)
virtual bool closedFigure () const
 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 setClosedFigure (bool closedFigure)
virtual const DtAppearance & appearance ()
 Appearance.
virtual void setAppearance (const DtAppearance &appearance)
virtual bool createSubObjects () const
 Create SubObjects.
virtual void setCreateSubObjects (bool createSubObjects)
virtual bool addToOrganization () const
 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.
virtual void setAddToOrganization (bool addToOrg)
virtual bool clampToGround () const
 If True (the default) the object will be created and placed on the nearest polygon.
virtual void setClampToGround (bool clamp)
virtual DtAggregateState initialAggregateState () const
 Set/get the initial aggregate state when creating an aggregate.
virtual void setInitialAggregateState (DtAggregateState aggregateState)
virtual std::list
< DtAdminContent * > * 
initialAdminContent ()
 Set any Admin Content messages passed on initialization.
virtual void setInitialAdminContent (std::list< DtAdminContent * > adminContent)
virtual void addInitialAdminContent (DtAdminContent *adminContent)
virtual std::list
< DtSimInterfaceContent * > * 
initialInterfaceContent ()
 Set any Interface Content messages passed on initialization.
virtual void setInitialInterfaceContent (std::list< DtSimInterfaceContent * > adminContent)
virtual void addInitialInterfaceContent (DtSimInterfaceContent *adminContent)
void setStartPosition (const DtVector &position)
 These are here for back compatibility and should be removed after the next release.
const DtVectorstartPosition () const
void setEndPosition (const DtVector &position)
const DtVectorendPosition () const
void setName (const DtString &name)
const DtStringname () const
virtual void setUserData (const DtString &userData)
virtual DtString userData () const
virtual int netRepSize () const
virtual bool setFromNet (const char *contentBuffer, unsigned contentSize)
virtual bool setToNet ()
virtual void printDataToString (DtString &str)
virtual DtString initialFormation () const
 The formation name to set when creating an aggregate.
virtual void setInitialFormation (const DtString &formation)
 The formation name to set when creating an aggregate.

Static Public Member Functions

static DtSimInterfaceContentcreator ()

Protected Member Functions

void copyList (const DtList &fromList)
 Note that these next two methods are not virtual.
void emptyList ()
 Clean the list out.

Protected Attributes

DtU32 myRequestId
DtSimulationAddress myVrfProcessAddress
DtString myObjectName
DtObjectType myObjectType
DtForceType myForceType
DtString myObjectLabel
DtReal myHeading
bool myClosedFigure
bool myProjection
std::vector< DtVectormyVertexList
DtList myVertices
 Backwards compatible vertex list as a DtList.
DtAppearance myAppearance
bool myCreateSubObjects
bool myAddToOrganization
bool myClampToGround
DtString myInitialFormation
DtU8 myInitialAggregateState
std::list< DtAdminContent * > myAdminContent
std::list
< DtSimInterfaceContent * > 
myInterfaceContent
DtString myUserData

Detailed Description

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 DtObjectType of the new entity. DtObjectType 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.

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.


Constructor & Destructor Documentation

default constructor

destructor

copy constructor


Member Function Documentation

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

assignment operator

virtual DtSimInterfaceContent* DtIfCreateVrfObject::clone ( ) const [virtual]

Returns a newly created instance of a DtIfCreateVrfObject.

Implements DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual int DtIfCreateVrfObject::type ( ) const [virtual]

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::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::setObjectName ( 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.

Referenced by setName().

virtual const DtString& DtIfCreateVrfObject::objectName ( ) const [virtual]

Referenced by name().

virtual void DtIfCreateVrfObject::setObjectType ( const DtObjectType objectType) [virtual]

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

Reimplemented in DtIfModifyVrfObject.

virtual const DtObjectType& 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 const DtVector& DtIfCreateVrfObject::position ( ) const [virtual]

In geocentric coordinates.

Referenced by startPosition().

virtual void DtIfCreateVrfObject::setPosition ( const DtVector position) [virtual]

Reimplemented in DtIfModifyVrfObject.

Referenced by setStartPosition().

virtual DtReal DtIfCreateVrfObject::heading ( ) const [virtual]

0 is north, clockwise, in radians.

virtual void DtIfCreateVrfObject::setHeading ( DtReal  heading) [virtual]

Reimplemented in DtIfModifyVrfObject.

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 DtList& DtIfCreateVrfObject::vertices ( ) const [virtual]

Backwards compatible access to vertexList.

Use vertexList() instead.

virtual void DtIfCreateVrfObject::addVertex ( const DtVector vertex) [virtual]

Add a vertex to the end of the vertex list.

Reimplemented in DtIfModifyVrfObject.

Referenced by setEndPosition().

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 const DtAppearance& DtIfCreateVrfObject::appearance ( ) [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 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 std::list<DtAdminContent*>* DtIfCreateVrfObject::initialAdminContent ( ) [virtual]

Set any Admin Content messages passed on initialization.

virtual void DtIfCreateVrfObject::setInitialAdminContent ( std::list< DtAdminContent * >  adminContent) [virtual]
virtual void DtIfCreateVrfObject::addInitialAdminContent ( DtAdminContent adminContent) [virtual]

Set any Interface Content messages passed on initialization.

virtual void DtIfCreateVrfObject::setInitialInterfaceContent ( std::list< DtSimInterfaceContent * >  adminContent) [virtual]
virtual void DtIfCreateVrfObject::addInitialInterfaceContent ( DtSimInterfaceContent adminContent) [virtual]
void DtIfCreateVrfObject::setStartPosition ( const DtVector position) [inline]

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

Reimplemented in DtIfModifyVrfObject.

References setPosition().

const DtVector & DtIfCreateVrfObject::startPosition ( ) const [inline]

References position().

void DtIfCreateVrfObject::setEndPosition ( const DtVector position) [inline]

Reimplemented in DtIfModifyVrfObject.

References addVertex().

const DtVector & DtIfCreateVrfObject::endPosition ( ) const [inline]

References myVertices.

void DtIfCreateVrfObject::setName ( const DtString name) [inline]

Reimplemented in DtIfModifyVrfObject.

References setObjectName().

const DtString & DtIfCreateVrfObject::name ( ) const [inline]

References objectName().

virtual void DtIfCreateVrfObject::setUserData ( const DtString userData) [virtual]

Reimplemented in DtIfModifyVrfObject.

virtual DtString DtIfCreateVrfObject::userData ( ) const [virtual]
virtual int DtIfCreateVrfObject::netRepSize ( ) const [virtual]

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::setFromNet ( const char *  contentBuffer,
unsigned  contentSize 
) [virtual]

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual bool DtIfCreateVrfObject::setToNet ( ) [virtual]

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

virtual void DtIfCreateVrfObject::printDataToString ( DtString str) [virtual]

Reimplemented from DtSimInterfaceContent.

Reimplemented in DtIfModifyVrfObject.

Reimplemented in DtIfModifyVrfObject.

void DtIfCreateVrfObject::copyList ( const DtList &  fromList) [protected]

Note that these next two methods are not virtual.

They are called from copy constructors and assignment operator, as well as destructor Calls emptyList(), and then for each vertex on the 'from' list, allocates a DtVector, copies the contents, and puts on our list.

void DtIfCreateVrfObject::emptyList ( ) [protected]

Clean the list out.


Member Data Documentation

DtSimulationAddress DtIfCreateVrfObject::myVrfProcessAddress [protected]
DtForceType DtIfCreateVrfObject::myForceType [protected]
DtReal DtIfCreateVrfObject::myHeading [protected]
std::vector<DtVector> DtIfCreateVrfObject::myVertexList [protected]
DtList DtIfCreateVrfObject::myVertices [mutable, protected]

Backwards compatible vertex list as a DtList.

Referenced by endPosition().

DtAppearance DtIfCreateVrfObject::myAppearance [protected]

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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)