VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes

Represents a particular FOM, as described by a FED file. More...

+ Inheritance diagram for DtFom:
+ Collaboration diagram for DtFom:

Public Member Functions

 DtFom (DtExerciseConn *exConn)
 Constructor. More...
 
virtual ~DtFom ()
 Destructor. More...
 
 DtFom (const DtFom &orig)
 copy constructor More...
 
DtFomoperator= (const DtFom &orig)
 assignment operator More...
 
virtual DtFedReadStatus readFed (const DtString &fedFile, const std::vector< std::wstring > &fomModules, const DtString &mimModule, bool strictCheckingEnabled, bool useDTD, bool dontParseSwitches)
 Read a vector of create merging them into this as they're read. More...
 
virtual void addDimension (const char *dimName, unsigned long upperBound, unsigned long defaultLowerBound, unsigned long defaultUpperBound, bool excluded, const DtString &normalization)
 Define a dimension. Used when initializing from FED file. More...
 
virtual bool addInterClass (const char *name, const char *baseName, DtTransportType transport, DtOrderType order, const char *space=NULL)
 Define a class. More...
 
virtual bool shouldPrintMissingClass (const char *name)
 Controls whether to print missing classes. More...
 
virtual bool addObjClass (const char *name, const char *baseName)
 Define a class. More...
 
virtual void addParameter (const char *className, const char *paramName)
 Define an parameter of a class. More...
 
virtual bool addInteractionDimension (const char *interactionName, const char *dimension)
 Add regions to the class Return true if add was successful (i.e., dimension is valid) More...
 
virtual void addAttribute (const char *className, const char *attrName, DtTransportType transport, DtOrderType order, const char *space=NULL)
 Define an attribute of a class. More...
 
void addAttribute (const char *className, const char *attrName, DtTransportType transport, DtOrderType order, DtSharingType sharing, DtFomUpdateType updateType, const DtString &updateCondition, DtOwnershipType ownershipType, const DtString &semantics, const char *spaceName=NULL)
 Define an attribute of a class. More...
 
virtual bool addAttributeDimension (const char *className, const char *attrName, const char *dimName)
 Define the dimensions of an attribute Return true if add was successful (i.e., dimension is valid) More...
 
virtual DtDimensionDescdimensionByName (const char *dimensionName) const
 Returns the dimension descriptor for the name. More...
 
virtual DtDimensionDescdimensionByHandle (RTI::DimensionHandle dimensionHandle) const
 Returns the dimension descriptor for the handle. More...
 
virtual DtObjClassDescrootObjClass () const
 Returns the root object class descriptor. More...
 
virtual DtObjClassDescrootMomObjClass () const
 Returns the root MOM object class descriptor. More...
 
virtual DtObjClassDescobjClassByName (const char *name) const
 Returns the object class descriptor for the name. More...
 
virtual DtObjClassDescobjClassByHandle (RTI::ObjectClassHandle handle) const
 Returns the object class descriptor for the handle. More...
 
virtual const std::list
< DtObjClassDesc * > & 
objClassList () const
 Return a list of object classes. More...
 
int numObjClasses () const
 Returns number of object classes in the FOM. More...
 
virtual DtInterClassDescrootInterClass () const
 Returns the root interaction class descriptor. More...
 
virtual DtInterClassDescrootMomInterClass () const
 Returns the root MOM interaction class descriptor. More...
 
virtual DtInterClassDescinterClassByName (const char *name) const
 Returns the interaction class descriptor for the name. More...
 
virtual DtInterClassDescinterClassByHandle (RTI::InteractionClassHandle handle) const
 Returns the interaction class descriptor for the handle. More...
 
virtual const std::list
< DtInterClassDesc * > & 
interClassList () const
 Return a list of interaction classes. More...
 
int numInterClasses () const
 Returns number of interaction classes in the FOM. More...
 
virtual DtVrlRtiAmbassadorrtiAmb () const
 Returns our RTI ambassador. More...
 
virtual void print () const
 Prints the contents of the FOM. More...
 
bool isDdmDisabled () const
 These variables determine if certain HLA services do not exist (For example, on lightweight mode). More...
 
void setIsDdmDisabled (bool val)
 
bool isMomIsDisabled () const
 
void setIsMomIsDisabled (bool val)
 
- Public Member Functions inherited from DtFedTarget
 DtFedTarget ()
 Constructor. More...
 
virtual ~DtFedTarget ()
 Destructor. More...
 
 DtFedTarget (const DtFedTarget &orig)
 copy constructor More...
 
DtFedTargetoperator= (const DtFedTarget &orig)
 assignment operator More...
 
virtual void setFomType (DtFomType type)
 Set/Get the FOM type. More...
 
virtual DtFomType fomType ()
 
virtual void addSpace (const char *name)
 Define a routing space. Used when initializing from FED file. More...
 
virtual void addDimension (const char *SpaceName, const char *dimName)
 Define a dimension within a routing space. More...
 
virtual bool autoProvide () const
 switches More...
 
virtual void setAutoProvide (bool value)
 
virtual bool conveyRegionDesignatorSets () const
 Set/Get convey region designator sets switch. More...
 
virtual void setConveyRegionDesignatorSets (bool value)
 
virtual bool conveyProducingFederate () const
 Set/Get convey producing federate switch. More...
 
virtual void setConveyProducingFederate (bool value)
 
virtual bool attributeScopeAdvisory () const
 Set/Get attribute scople advisory switch. More...
 
virtual void setAttributeScopeAdvisory (bool value)
 
virtual bool attributeRelevanceAdvisory () const
 Set/Get attribute relevance advisory switch. More...
 
virtual void setAttributeRelevanceAdvisory (bool value)
 
virtual bool objectClassRelevanceAdvisory () const
 Set/Get object class relevance advisory switch. More...
 
virtual void setObjectClassRelevanceAdvisory (bool value)
 
virtual bool interactionRelevanceAdvisory () const
 Set/Get ineraction relevance advisory switch. More...
 
virtual void setInteractionRelevanceAdvisory (bool value)
 
virtual bool serviceReporting () const
 Set/Get service reporting switch. More...
 
virtual void setServiceReporting (bool value)
 
virtual bool exceptionReporting () const
 Set/Get exception reporting switch. More...
 
virtual void setExceptionReporting (bool value)
 
virtual bool delaySubscriptionEvaluation () const
 Set/Get delay subscription evaluation switch. More...
 
virtual void setDelaySubscriptionEvaluation (bool value)
 
virtual DtResignAction automaticResignAction () const
 Set/Get Automatic Resign Action switch. More...
 
virtual void setAutomaticResignAction (DtResignAction value)
 
virtual bool UpdateRateConsistencyTest (const DtUpdateRateType &updateRate)
 
virtual bool knownUpdateRate (const DtUpdateRateType &updateRate) const
 
virtual unsigned int numUpdateRates () const
 
virtual void addUpdateRate (DtUpdateRateType *updateRate)
 
virtual bool SyncPointConsistencyTest (const DtSynchronizationPointsType &syncName)
 
virtual bool knownSyncPoint (const DtSynchronizationPointsType &syncName) const
 
virtual void addSyncPoint (DtSynchronizationPointsType *syncName)
 
virtual unsigned int numSyncPoints () const
 
virtual bool knownTransportType (const DtTransportationType &transportName) const
 
virtual bool TransportTypeConsistencyTest (const DtTransportationType &transportName)
 
virtual unsigned int numTransports () const
 
virtual void addTransportType (DtTransportationType *transportName)
 
virtual DtTransportType transportTypeFromTransportation (const DtString &transportTypeName) const
 
virtual bool knownUserDefinedTag (const DtUserSuppliedTagsType &tagName) const
 
virtual unsigned int numUserDefinedTags () const
 
virtual bool userDefinedTagsSame (DtFedTarget const &module) const
 
virtual void addUserDefinedTag (DtUserSuppliedTagsType *tagName)
 
virtual DtMergeFomStatus mergeUserDefinedTypes (DtFedTarget const &module)
 
virtual bool NoteConsistencyTest (const DtNotesType &syncName)
 
virtual bool knownNote (const DtNotesType &noteName) const
 
virtual void addNote (DtNotesType *noteName)
 
virtual unsigned int numNotes () const
 
virtual DtMergeFomStatus mergeSwitches (DtFedTarget const &module)
 
virtual bool knownSwitch (const DtString &switchName) const
 
virtual unsigned int numSwitches () const
 
virtual bool switchesSame (DtFedTarget const &module) const
 
virtual bool switchValue (const DtString &switchName) const
 
virtual void addSwitch (const DtString &switchName, bool switchVal)
 
virtual DtMergeFomStatus mergeNotes (DtFedTarget const &module)
 
virtual bool knownTime (const DtTimeType &timeName) const
 
virtual unsigned int numTimeTypes () const
 
virtual bool timeTypesSame (DtFedTarget const &module) const
 
virtual void addTime (DtTimeType *timeName)
 
virtual DtMergeFomStatus mergeTimeTypes (DtFedTarget const &module)
 
virtual void addModelIdentification (const char *nameTag)
 
virtual void setFomDependencies (const std::vector< DtString > &fomDependencies)
 
virtual const std::vector
< DtString > & 
fomDependencies ()
 
virtual const std::vector
< DtString > & 
fomDependencies () const
 
virtual DtMergeFomStatus mergeTarget (DtFedTarget const &module)
 
virtual DtMergeFomStatus mergeSpaces (DtFedTarget const &module)
 
virtual DtMergeFomStatus mergeUpdateRates (DtFedTarget const &module)
 
virtual DtMergeFomStatus mergeSyncPoints (DtFedTarget const &module)
 
virtual DtMergeFomStatus mergeTransportTypes (DtFedTarget const &module)
 
virtual DtMergeFomStatus postMergeCheckTarget (DtString &errorString)
 
virtual bool resolveObjectModelIdentification (DtString &errorString)
 
virtual bool resolveObjectClasses (DtString &errorString, bool &fomReadError)
 
virtual bool resolveInteractionClasses (DtString &errorString, bool &fomReadError)
 
virtual bool resolveAttributes (DtString &errorString, bool &fomReadError)
 
virtual bool resolveParameters (DtString &errorString, bool &fomReadError)
 
virtual bool resolveDimensions (DtString &errorString, bool &fomReadError)
 
virtual bool resolveTimeRepresentations (DtString &errorString)
 
virtual bool resolveUserSuppliedTags (DtString &errorString)
 
virtual bool resolveSynchronizationPoints (DtString &errorString)
 
virtual bool resolveTranportationTypes (DtString &errorString)
 
virtual bool resolveUpdateRates (DtString &errorString)
 
virtual bool resolveSwitches (DtString &errorString)
 
void checkSpecificSwitch (const DtString &switchName, bool &mySwitchMissing, DtString &mySwitchesError)
 
virtual bool resolveDatatypes (DtString &errorString)
 
virtual bool resolveNotes (DtString &errorString)
 
virtual bool resolveServiceUsage (DtString &errorString)
 
virtual void addBasicDataRepresentation (DtBasicDataRepresentationType *theBasicDataRepresentation)
 
virtual void addSimpleDataType (DtSimpleDatatypeType *theSimpleDataType)
 
virtual void addArrayDataType (DtArrayDatatypeType *theArrayDataType)
 
virtual void addEnumeratedDataType (DtEnumeratedDatatypeType *theEnumeratedDataType)
 
virtual void addFixedRecordDataType (DtFixedRecordDatatypeType *theFixedRecordDataType)
 
virtual void addVariantRecordDataType (DtVariantRecordDatatypeType *theVariantRecordDataType)
 
virtual bool knownModelIdentification (DtString const &nameTag) const
 
virtual bool modelIdentificationSame (DtFedTarget const &module) const
 
virtual bool basicDataRepresentationConsistencyTest (const DtBasicDataRepresentationType &theBasicDataRepresentation)
 
virtual bool knownBasicDataRepresentation (const DtBasicDataRepresentationType &theBasicDataRepresentation) const
 
virtual bool basicDataRepresentationSame (DtFedTarget const &module) const
 
virtual DtMergeFomStatus mergeBasicDataRepresentation (DtFedTarget const &module)
 
virtual bool simpleDatatypeConsistencyTest (const DtSimpleDatatypeType &theSimpleDatatype)
 
virtual bool knownSimpleDatatype (const DtSimpleDatatypeType &theSimpleDatatype) const
 
virtual bool simpleDatatypeSame (DtFedTarget const &module) const
 
virtual DtMergeFomStatus mergeSimpleDatatype (DtFedTarget const &module)
 
virtual bool enumeratedDatatypeConsistencyTest (const DtEnumeratedDatatypeType &theSimpleDatatype)
 
virtual bool knownEnumeratedDatatype (const DtEnumeratedDatatypeType &theEnumeratedDatatype) const
 
virtual bool enumeratedDatatypeSame (DtFedTarget const &module) const
 
virtual DtMergeFomStatus mergeEnumeratedDatatype (DtFedTarget const &module)
 
virtual bool arrayDatatypeConsistencyTest (const DtArrayDatatypeType &DtArrayDatatypeType)
 
virtual bool knownArrayDatatype (const DtArrayDatatypeType &theArrayDatatype) const
 
virtual bool arrayDatatypeSame (DtFedTarget const &module) const
 
virtual DtMergeFomStatus mergeArrayDatatypeType (DtFedTarget const &module)
 
virtual bool fixedRecordDatatypeConsistencyTest (const DtFixedRecordDatatypeType theFixedRecordDatatype)
 
virtual bool knownFixedRecordDatatype (const DtFixedRecordDatatypeType theFixedRecordDatatype) const
 
virtual bool fixedRecordDatatypeSame (DtFedTarget const &module) const
 
virtual DtMergeFomStatus mergeFixedRecordDatatype (DtFedTarget const &module)
 
virtual bool variantRecordDatatypeConsistencyTest (const DtVariantRecordDatatypeType &theVariantRecordDatatype)
 
virtual bool knownVariantRecordDatatype (const DtVariantRecordDatatypeType &theVariantRecordDatatype) const
 
virtual bool variantRecordDatatypeSame (DtFedTarget const &module) const
 
DtMergeFomStatus mergeVariantRecordDatatype (DtFedTarget const &module)
 
virtual void addUnresolvedAttributeTransportation (const DtString &transportationName, const DtString &className, const DtString &attrName)
 
virtual void removeResolvedAttributeTransportation (const DtString &transportationName, ClassAttributeNamePair classAttrPair)
 
virtual void addUnresolvedInteractionTransportation (const DtString &transportationName, const DtString &interactionName)
 
virtual void removeResolvedInteractionTransportation (const DtString &transportationName, const DtString &interactionName)
 
virtual DtStringlastError ()
 

Static Public Member Functions

static void setFomCreator (DtFomCreator)
 set creator function More...
 
static DtFomcreate (DtExerciseConn *exConn)
 creator function More...
 
static void setIntersection (const RTI::AttributeHandleSet &set1, const RTI::AttributeHandleSet &set2, RTI::AttributeHandleSet &destinationSet)
 Attribute Handle Set operations These operations append to destination (i.e., do not begin by clearing out destination) More...
 
static void setUnion (const RTI::AttributeHandleSet &set1, const RTI::AttributeHandleSet &set2, RTI::AttributeHandleSet &destinationSet)
 Union of attribute handle sets is added to the destination. More...
 
static void setDifference (const RTI::AttributeHandleSet &set1, const RTI::AttributeHandleSet &set2, RTI::AttributeHandleSet &destinationSet)
 Difference of attribute handle set2 from set1 is added to the destination. More...
 
static void setSymmetricDifference (const RTI::AttributeHandleSet &set1, const RTI::AttributeHandleSet &set2, RTI::AttributeHandleSet &destinationSet)
 Symmetric difference of attribute handle set1 and set2 is added to the destination (s1-s2 U s2-s1) More...
 
static bool setsEqual (const RTI::AttributeHandleSet &set1, const RTI::AttributeHandleSet &set2)
 Determine if the 2 sets are equal Return bool: s1 == set2. More...
 
static void setInsert (RTI::AttributeHandleSet &handleSet, const RTI::AttributeHandle &handle)
 Add handle to set. More...
 
static void setInsert (RTI::AttributeHandleSet &destinationSet, const RTI::AttributeHandleSet &sourceSet)
 Add source attributes to destination set. More...
 
static void setRemove (RTI::AttributeHandleSet &handleSet, const RTI::AttributeHandle &handle)
 Remove handle from set. More...
 
static void setRemove (RTI::AttributeHandleSet &destinationSet, const RTI::AttributeHandleSet &sourceSet)
 Remove source attributes from destination set. More...
 
static void setClear (RTI::AttributeHandleSet &handleSet)
 Clear or empty the given set. More...
 
- Static Public Member Functions inherited from DtFedTarget
static void setDefaultAutoProvide (bool onOff)
 Set/Get the default auto provide. More...
 
static bool defaultAutoProvide ()
 
static void setDefaultConveyRegionDesignatorSets (bool onOff)
 Set/Get the default convey region. More...
 
static bool defaultConveyRegionDesignatorSets ()
 
static void setDefaultConveyProducingFederate (bool onOff)
 Set/Get the default convey producing federate. More...
 
static bool defaultConveyProducingFederate ()
 
static void setDefaultObjectClassRelevanceAdvisory (bool onOff)
 Set/Get the default class relevance advisory. More...
 
static bool defaultObjectClassRelevanceAdvisory ()
 
static void setDefaultAttributeRelevanceAdvisory (bool onOff)
 Set/Get the default attribute relevance advisory. More...
 
static bool defaultAttributeRelevanceAdvisory ()
 
static void setDefaultAttributeScopeAdvisory (bool onOff)
 Set/Get the default attribute scope advisory. More...
 
static bool defaultAttributeScopeAdvisory ()
 
static void setDefaultInteractionRelevanceAdvisory (bool onOff)
 Set/Get the default interaction relevance advisory. More...
 
static bool defaultInteractionRelevanceAdvisory ()
 
static void setDefaultServiceReporting (bool onOff)
 Set/Get the default service reporting. More...
 
static bool defaultServiceReporting ()
 
static void setDefaultExceptionReporting (bool onOff)
 set/get the default exception reporting More...
 
static bool defaultExceptionReporting ()
 
static void setDefaultAutomaticResignAction (DtResignAction val)
 set/get the automatic resign action More...
 
static DtResignAction defaultAutomaticResignAction ()
 

Protected Member Functions

virtual DtMergeFomStatus mergeObjectClasses (const DtFom &module)
 Merge the object classes of the specified FomMgr with this. More...
 
virtual DtMergeFomStatus mergeObjClassDesc (const DtObjClassDesc *desc)
 Merge the contents of the objClassDesc with this. More...
 
virtual DtMergeFomStatus mergeInteractionClasses (const DtFom &module)
 Merge the contents of the specified interactionClasses with this. More...
 
virtual DtMergeFomStatus mergeIntClassDesc (const DtInterClassDesc *desc)
 Merge the contents of the InteractionClassDescription with this. More...
 
virtual DtMergeFomStatus mergeObjectClasses (const DtFedTarget &module)
 Merge the object classes of the specified FomMgr with this. More...
 
virtual DtMergeFomStatus mergeInteractionClasses (const DtFedTarget &module)
 Merge the contents of the specified interactionClasses with this. More...
 
virtual bool resolveAttributeDimensions ()
 
- Protected Member Functions inherited from DtFedTarget
virtual void addUnresolvedAttributeDimension (const DtString &dimensionName, const DtString &className, const DtString &attrName)
 
virtual void removeResolvedAttribute (const DtString &dimensionName, ClassAttributeNamePair classAttrPair)
 
virtual void addUnresolvedInteractionDimension (const DtString &dimensionName, const DtString &interactionName)
 
virtual void removeResolvedInteractionDimension (const DtString &dimensionName, const DtString &interactionName)
 
virtual void mergeUnresolved (DtFedTarget const &module)
 
virtual void unionUnresolvedAttributeDimensions (const std::map< DtString, std::set< ClassAttributeNamePair > > &unresolvedAttributeDimensions)
 
virtual void unionUnresolvedInteractionDimensions (const std::map< DtString, std::set< DtString > > &unresolvedInteractionDimensions)
 
virtual void unionUnresolvedAttributeTransportation (const std::map< DtString, std::set< ClassAttributeNamePair > > &unresolvedAttributetransportations)
 
virtual void unionUnresolvedInteractionTransportation (const std::map< DtString, std::set< DtString > > &unresolvedInteractiontransportations)
 
virtual bool checkStringsIgnoringWhiteSpaceAndNewline (const DtString &left, const DtString &right)
 

Protected Attributes

DtExerciseConnmyExConn
 
std::map< DtString,
DtDimensionDesc * > 
myDimensionsByName
 Hash lists that map class names (DtStringHashKeys) to descriptor pointers. More...
 
std::map< DtString,
DtInterClassDesc * > 
myInterClassesByName
 
std::map< DtString,
DtObjClassDesc * > 
myObjClassesByName
 
std::map< std::wstring,
DtDimensionDesc * > 
myDimensionsByHandle
 Hash lists that map class handles (DtIntHashKeys) to DtObjClassDesc pointers. More...
 
std::map< std::wstring,
DtInterClassDesc * > 
myInterClassesByHandle
 
std::map< std::wstring,
DtObjClassDesc * > 
myObjClassesByHandle
 
std::list< DtDimensionDesc * > myDimensionList
 List of descriptors. More...
 
std::list< DtObjClassDesc * > myObjClassList
 
std::list< DtInterClassDesc * > myInterClassList
 
DtString myObjRootName
 
DtString myInterRootName
 
std::set< DtStringmyFailedObjClasses
 
std::set< DtStringmyFailedInterClasses
 
bool myDdmIsDisabled
 
bool myMomIsDisabled
 
- Protected Attributes inherited from DtFedTarget
std::map< DtString, std::set
< ClassAttributeNamePair > > 
unresolvedAttributeDimensions
 
std::map< DtString, std::set
< DtString > > 
unresolvedInteractionDimensions
 
std::map< DtString, std::set
< ClassAttributeNamePair > > 
unresolvedAttributeTransportations
 
std::map< DtString, std::set
< DtString > > 
unresolvedInteractionTransportations
 

Static Protected Attributes

static DtFomCreator theCreatorFunction
 
- Static Protected Attributes inherited from DtFedTarget
static bool theDefaultAutoProvide
 
static bool theDefaultConveyRegionDesignatorSets
 
static bool theDefaultConveyProducingFederate
 
static bool theDefaultObjectClassRelevanceAdvisory
 
static bool theDefaultAttributeRelevanceAdvisory
 
static bool theDefaultAttributeScopeAdvisory
 
static bool theDefaultInteractionRelevanceAdvisory
 
static bool theDefaultServiceReporting
 
static bool theDefaultExceptionReporting
 
static DtResignAction theDefaultAutomaticResignAction
 

Additional Inherited Members

- Public Types inherited from DtFedTarget
typedef std::set
< DtBoost::shared_ptr
< DtBasicDataRepresentationType >
, FomTypeCompare
< DtBasicDataRepresentationType > > 
DtBasicDataRepresentationSetT
 Datatype tables (six in total) More...
 
typedef std::set
< DtBoost::shared_ptr
< DtSimpleDatatypeType >
, FomTypeCompare
< DtSimpleDatatypeType > > 
DtSimpleDatatypeSetT
 
typedef std::set
< DtBoost::shared_ptr
< DtEnumeratedDatatypeType >
, FomTypeCompare
< DtEnumeratedDatatypeType > > 
DtEnumeratedDatatypeSetT
 
typedef std::set
< DtBoost::shared_ptr
< DtArrayDatatypeType >
, FomTypeCompare
< DtArrayDatatypeType > > 
DtArrayDatatypeSetT
 
typedef std::set
< DtBoost::shared_ptr
< DtFixedRecordDatatypeType >
, FomTypeCompare
< DtFixedRecordDatatypeType > > 
DtFixedRecordDatatypeSetT
 
typedef std::set
< DtBoost::shared_ptr
< DtVariantRecordDatatypeType >
, FomTypeCompare
< DtVariantRecordDatatypeType > > 
DtVariantRecordDatatypeSetT
 
- Public Attributes inherited from DtFedTarget
DtFomType myFomType
 
DtString myModelIdentification
 
bool myAutoProvide
 
bool myConveyRegionDesignatorSets
 
bool myConveyProducingFederate
 
bool myAttributeScopeAdvisory
 
bool myAttributeRelevanceAdvisory
 
bool myObjectClassRelevanceAdvisory
 
bool myInteractionRelevanceAdvisory
 
bool myServiceReporting
 
bool myExceptionReporting
 
bool myDelaySubscriptionEvaluation
 
DtResignAction myAutomaticResignAction
 
bool isStrictMerge
 
bool myCheckSwitches
 
DtTimeTypeSetT myTimeTypes
 
DtUserDefinedTagsSetT myUserDefinedTags
 
DtSyncPointSetT mySyncPoints
 
DtTransportationSetT myTransportTypes
 
DtUpdateRateSetT myUpdateRates
 
DtNotesSetT myNotes
 
std::map< DtString, boolmySwitches
 
DtBasicDataRepresentationSetT myBasicDataRepTypes
 
DtSimpleDatatypeSetT mySimpleDatatypeTypes
 
DtEnumeratedDatatypeSetT myEnumeratedDatatypeTypes
 
DtArrayDatatypeSetT myArrayDatatypeTypes
 
DtFixedRecordDatatypeSetT myFixedRecordDatatypeTypes
 
DtVariantRecordDatatypeSetT myVariantRecordDatatypeTypes
 
DtString myLastError
 
bool myErrorFlag
 
bool myMergingFomModule
 Indicates a FOM module merge is taking place. More...
 

Detailed Description

Represents a particular FOM, as described by a FED file.

Object classes are represented by DtObjClassDescs; Interaction classes by DtInterClassDescs. Being a DtFedTarget, a DtFom can be filled in by a DtFedReader. Alternatively, you can fill it in programatically, with addObjClass, addInterClass, addParameter and addAttribute. Once so initialized, you can query for a class descriptor associated with a class.

Constructor & Destructor Documentation

DtFom::DtFom ( DtExerciseConn exConn)

Constructor.

virtual DtFom::~DtFom ( )
virtual

Destructor.

DtFom::DtFom ( const DtFom orig)

copy constructor

Member Function Documentation

virtual void DtFom::addAttribute ( const char *  className,
const char *  attrName,
DtTransportType  transport,
DtOrderType  order,
const char *  space = NULL 
)
virtual

Define an attribute of a class.

Used when initializing from FED file.

Implements DtFedTarget.

void DtFom::addAttribute ( const char *  className,
const char *  attrName,
DtTransportType  transport,
DtOrderType  order,
DtSharingType  sharing,
DtFomUpdateType  updateType,
const DtString updateCondition,
DtOwnershipType  ownershipType,
const DtString semantics,
const char *  spaceName = NULL 
)
virtual

Define an attribute of a class.

Used when initializing from FED file.

Implements DtFedTarget.

virtual bool DtFom::addAttributeDimension ( const char *  className,
const char *  attrName,
const char *  dimName 
)
virtual

Define the dimensions of an attribute Return true if add was successful (i.e., dimension is valid)

Implements DtFedTarget.

virtual void DtFom::addDimension ( const char *  dimName,
unsigned long  upperBound,
unsigned long  defaultLowerBound,
unsigned long  defaultUpperBound,
bool  excluded,
const DtString normalization 
)
virtual

Define a dimension. Used when initializing from FED file.

Reimplemented from DtFedTarget.

virtual bool DtFom::addInteractionDimension ( const char *  interactionName,
const char *  dimension 
)
virtual

Add regions to the class Return true if add was successful (i.e., dimension is valid)

Implements DtFedTarget.

virtual bool DtFom::addInterClass ( const char *  name,
const char *  baseName,
DtTransportType  transport,
DtOrderType  order,
const char *  space = NULL 
)
virtual

Define a class.

Used when initializing from FED file. Return bool: add was successful?

Implements DtFedTarget.

virtual bool DtFom::addObjClass ( const char *  name,
const char *  baseName 
)
virtual

Define a class.

Used when initializing from FED file. Return bool: add was successful?

Implements DtFedTarget.

virtual void DtFom::addParameter ( const char *  className,
const char *  paramName 
)
virtual

Define an parameter of a class.

Used when initializing from FED file.

Implements DtFedTarget.

static DtFom* DtFom::create ( DtExerciseConn exConn)
static

creator function

virtual DtDimensionDesc* DtFom::dimensionByHandle ( RTI::DimensionHandle  dimensionHandle) const
virtual

Returns the dimension descriptor for the handle.

virtual DtDimensionDesc* DtFom::dimensionByName ( const char *  dimensionName) const
virtual

Returns the dimension descriptor for the name.

virtual DtInterClassDesc* DtFom::interClassByHandle ( RTI::InteractionClassHandle  handle) const
virtual

Returns the interaction class descriptor for the handle.

virtual DtInterClassDesc* DtFom::interClassByName ( const char *  name) const
virtual

Returns the interaction class descriptor for the name.

virtual const std::list<DtInterClassDesc*>& DtFom::interClassList ( ) const
virtual

Return a list of interaction classes.

These lists contain pointers to DtInterClassDesc, which can be accessed using the DtList API. It is provided to replace the firstInterClass/lastInterClass/nextInterClass functionality below.

bool DtFom::isDdmDisabled ( ) const

These variables determine if certain HLA services do not exist (For example, on lightweight mode).

You can set them manually or they will be set automatically when we try to use these services.

bool DtFom::isMomIsDisabled ( ) const
virtual DtMergeFomStatus DtFom::mergeIntClassDesc ( const DtInterClassDesc desc)
protectedvirtual

Merge the contents of the InteractionClassDescription with this.

virtual DtMergeFomStatus DtFom::mergeInteractionClasses ( const DtFom module)
protectedvirtual

Merge the contents of the specified interactionClasses with this.

virtual DtMergeFomStatus DtFom::mergeInteractionClasses ( const DtFedTarget module)
protectedvirtual

Merge the contents of the specified interactionClasses with this.

Reimplemented from DtFedTarget.

virtual DtMergeFomStatus DtFom::mergeObjClassDesc ( const DtObjClassDesc desc)
protectedvirtual

Merge the contents of the objClassDesc with this.

virtual DtMergeFomStatus DtFom::mergeObjectClasses ( const DtFom module)
protectedvirtual

Merge the object classes of the specified FomMgr with this.

virtual DtMergeFomStatus DtFom::mergeObjectClasses ( const DtFedTarget module)
protectedvirtual

Merge the object classes of the specified FomMgr with this.

Reimplemented from DtFedTarget.

int DtFom::numInterClasses ( ) const

Returns number of interaction classes in the FOM.

int DtFom::numObjClasses ( ) const

Returns number of object classes in the FOM.

virtual DtObjClassDesc* DtFom::objClassByHandle ( RTI::ObjectClassHandle  handle) const
virtual

Returns the object class descriptor for the handle.

virtual DtObjClassDesc* DtFom::objClassByName ( const char *  name) const
virtual

Returns the object class descriptor for the name.

virtual const std::list<DtObjClassDesc*>& DtFom::objClassList ( ) const
virtual

Return a list of object classes.

These lists contain pointers to DtObjClassDesc, which can be accessed using the DtList API. It is provided to replace the firstObjClass/lastObjClass/nextObjClass functionality below.

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

assignment operator

virtual void DtFom::print ( ) const
virtual

Prints the contents of the FOM.

virtual DtFedReadStatus DtFom::readFed ( const DtString fedFile,
const std::vector< std::wstring > &  fomModules,
const DtString mimModule,
bool  strictCheckingEnabled,
bool  useDTD,
bool  dontParseSwitches 
)
virtual

Read a vector of create merging them into this as they're read.

virtual bool DtFom::resolveAttributeDimensions ( )
protectedvirtual
virtual DtInterClassDesc* DtFom::rootInterClass ( ) const
virtual

Returns the root interaction class descriptor.

virtual DtInterClassDesc* DtFom::rootMomInterClass ( ) const
virtual

Returns the root MOM interaction class descriptor.

virtual DtObjClassDesc* DtFom::rootMomObjClass ( ) const
virtual

Returns the root MOM object class descriptor.

virtual DtObjClassDesc* DtFom::rootObjClass ( ) const
virtual

Returns the root object class descriptor.

DtVrlRtiAmbassador * DtFom::rtiAmb ( ) const
inlinevirtual

Returns our RTI ambassador.

References myExConn, and DtExerciseConn::rtiAmb().

static void DtFom::setClear ( RTI::AttributeHandleSet &  handleSet)
static

Clear or empty the given set.

static void DtFom::setDifference ( const RTI::AttributeHandleSet &  set1,
const RTI::AttributeHandleSet &  set2,
RTI::AttributeHandleSet &  destinationSet 
)
static

Difference of attribute handle set2 from set1 is added to the destination.

static void DtFom::setFomCreator ( DtFomCreator  )
static

set creator function

static void DtFom::setInsert ( RTI::AttributeHandleSet &  handleSet,
const RTI::AttributeHandle &  handle 
)
static

Add handle to set.

static void DtFom::setInsert ( RTI::AttributeHandleSet &  destinationSet,
const RTI::AttributeHandleSet &  sourceSet 
)
static

Add source attributes to destination set.

static void DtFom::setIntersection ( const RTI::AttributeHandleSet &  set1,
const RTI::AttributeHandleSet &  set2,
RTI::AttributeHandleSet &  destinationSet 
)
static

Attribute Handle Set operations These operations append to destination (i.e., do not begin by clearing out destination)

Intersection of attribute handle sets is added to the destination

void DtFom::setIsDdmDisabled ( bool  val)
void DtFom::setIsMomIsDisabled ( bool  val)
static void DtFom::setRemove ( RTI::AttributeHandleSet &  handleSet,
const RTI::AttributeHandle &  handle 
)
static

Remove handle from set.

static void DtFom::setRemove ( RTI::AttributeHandleSet &  destinationSet,
const RTI::AttributeHandleSet &  sourceSet 
)
static

Remove source attributes from destination set.

static bool DtFom::setsEqual ( const RTI::AttributeHandleSet &  set1,
const RTI::AttributeHandleSet &  set2 
)
static

Determine if the 2 sets are equal Return bool: s1 == set2.

static void DtFom::setSymmetricDifference ( const RTI::AttributeHandleSet &  set1,
const RTI::AttributeHandleSet &  set2,
RTI::AttributeHandleSet &  destinationSet 
)
static

Symmetric difference of attribute handle set1 and set2 is added to the destination (s1-s2 U s2-s1)

static void DtFom::setUnion ( const RTI::AttributeHandleSet &  set1,
const RTI::AttributeHandleSet &  set2,
RTI::AttributeHandleSet &  destinationSet 
)
static

Union of attribute handle sets is added to the destination.

virtual bool DtFom::shouldPrintMissingClass ( const char *  name)
virtual

Controls whether to print missing classes.

This returns true if the name passed in must be present when mixing protocols (do not print MOM failures)

Member Data Documentation

bool DtFom::myDdmIsDisabled
protected
std::list<DtDimensionDesc*> DtFom::myDimensionList
protected

List of descriptors.

std::map<std::wstring, DtDimensionDesc*> DtFom::myDimensionsByHandle
protected

Hash lists that map class handles (DtIntHashKeys) to DtObjClassDesc pointers.

std::map<DtString, DtDimensionDesc*> DtFom::myDimensionsByName
protected

Hash lists that map class names (DtStringHashKeys) to descriptor pointers.

DtExerciseConn* DtFom::myExConn
protected

Referenced by rtiAmb().

std::set<DtString> DtFom::myFailedInterClasses
protected
std::set<DtString> DtFom::myFailedObjClasses
protected
std::map<std::wstring, DtInterClassDesc*> DtFom::myInterClassesByHandle
protected
std::map<DtString, DtInterClassDesc*> DtFom::myInterClassesByName
protected
std::list<DtInterClassDesc*> DtFom::myInterClassList
protected
DtString DtFom::myInterRootName
protected
bool DtFom::myMomIsDisabled
protected
std::map<std::wstring, DtObjClassDesc*> DtFom::myObjClassesByHandle
protected
std::map<DtString, DtObjClassDesc*> DtFom::myObjClassesByName
protected
std::list<DtObjClassDesc*> DtFom::myObjClassList
protected
DtString DtFom::myObjRootName
protected
DtFomCreator DtFom::theCreatorFunction
staticprotected

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

Document ID: Generated on Mon Apr 25 03:39:01 EDT 2022 from SVN revision 242502
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)