49 RTI::ObjectClassHandle handle,
56 virtual void addAttr(
const char*
attrName,
bool withSpace =
false);
59 virtual RTI::ObjectClassHandle handle()
const;
62 virtual RTI::AttributeHandle attributeHandleByName(
const char *
attrName)
const;
65 virtual DtString attributeNameByHandle(
const RTI::AttributeHandle& hand)
const;
68 virtual const char* name()
const;
80 virtual bool isLeafClass()
const;
84 virtual int isOfClass(RTI::ObjectClassHandle hand)
const;
88 virtual int numAttributes()
const;
91 virtual bool hasAttribute(
const char*
attrName)
const;
95 virtual const RTI::AttributeHandleSet& attrHandleSet()
const;
98 virtual const RTI::AttributeHandleSet& ownAttrHandles()
const;
106 virtual bool classNeededByFederation();
112 virtual void publish();
113 virtual void publish(
const RTI::AttributeHandleSet& hSet);
116 virtual void unpublish();
124 virtual void subscribe(std::wstring
const& updateRateDesignator,
bool active);
126 std::wstring
const& updateRateDesignator,
bool active);
127 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
128 std::wstring
const& updateRateDesignator,
bool active);
129 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
DtDDMRegionSP region,
130 std::wstring
const& updateRateDesignator,
bool active);
133 virtual void subscribe(std::wstring
const& updateRateDesignator = L
"");
135 std::wstring
const& updateRateDesignator = L
"");
136 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
137 std::wstring
const& updateRateDesignator = L
"");
138 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
DtDDMRegionSP region,
139 std::wstring
const& updateRateDesignator = L
"");
142 virtual void passiveSubscribe();
145 virtual void unsubscribe();
150 virtual void requestUpdates();
152 virtual void requestUpdates(
const RTI::AttributeHandleSet& hSet);
153 virtual void requestUpdates(
const RTI::AttributeHandleSet& hSet,
159 virtual const RTI::AttributeHandleSet& publishedAttrs()
const;
163 virtual bool everPublished()
const;
168 virtual const RTI::AttributeHandleSet& subscribedAttrs()
const;
170 virtual const RTI::AttributeHandleSet& attributesWithSpace()
const;
171 virtual const RTI::AttributeHandleSet& attributesWithoutSpace()
const;
173 virtual const RTI::AttributeHandleSet& subscribedAttrsWithSpace()
const;
174 virtual const RTI::AttributeHandleSet& subscribedAttrsWithoutSpace()
const;
182 virtual bool everSubscribed()
const;
191 virtual RTI::AttributeHandle privilegeHandle()
const;
203 virtual void setSubscribeToUnspecifiedAttributesFlag(
bool subscribe);
204 virtual bool subscribeToUnspecifiedAttributesFlag();
213 virtual void enableUnknownAttributes();
220 virtual void setUnknownAttributeEncoder(
225 virtual void setUnknownAttributeChecker(
230 virtual void setUnknownAttributeDecoder(
249 static void setSubscriptionTimeDelay(
double delay);
254 static void startRegCb(RTI::ObjectClassHandle h,
258 static void stopRegCb(RTI::ObjectClassHandle h,
264 virtual void processStartReg(RTI::ObjectClassHandle h);
267 virtual void processStopReg(RTI::ObjectClassHandle h);
274 virtual void synchSubscribedAttributes();
278 virtual void fillInAttributeHandleSetRegionHandleSetPairVector(
280 RTI::AttributeHandleSetRegionHandleSetPairVector& pairVector);
283 virtual void addAttr(
const char*
attrName, RTI::AttributeHandle attrHandle,
284 RTI::DimensionHandleSet& dimSet,
bool isPrivilegeToDelete,
bool withSpace =
false);
287 virtual bool isMomAttribute(
const char *
attrName);
291 RTI::ObjectClassHandle myHandle;
292 RTI::AttributeHandleSet* myAttrs;
293 RTI::AttributeHandleSet* myOwnAttrs;
294 RTI::AttributeHandleSet* mySubAttrs;
295 RTI::AttributeHandleSet* myPubAttrs;
298 RTI::AttributeHandleSet* myAttrsWithSpace;
301 RTI::AttributeHandleSet* myAttrsWithoutSpace;
303 RTI::AttributeHandleSet* mySubAttrsWithSpace;
304 RTI::AttributeHandleSet* mySubAttrsWithoutSpace;
306 RTI::DimensionHandleSet myClassDimSet;
310 std::list<DtObjClassDesc*> myChildren;
313 bool myEverPublished;
314 bool myEverSubscribed;
315 int myNumSubscribeRequests;
316 bool mySubscribeToUnspecifiedAttributesFlag;
319 RTI::AttributeHandle myPrivHandle;
320 RTI::AttributeHandle myMinAttrHand;
321 RTI::AttributeHandle myMaxAttrHand;
323 typedef std::map<RTI::AttributeHandle, DtString> StringToAttributeHandleMap;
324 StringToAttributeHandleMap myStringToHandleMap;
328 typedef std::vector<RTI::AttributeHandleSetRegionHandleSetPair>
330 RegionHandleVector mySubscribedRegions;
338 static double theSubscriptionTimeDelay;
381 inline bool DtObjClassDesc::isLeafClass()
const
RTI::AttributeHandleSet * myAttrs
Definition: objClassDesc13.h:278
static void setSubscriptionTimeDelay(double delay)
Set a time delay to occur after calling RTI::RTIambassador::subscribe() The purpose of this function ...
Definition: objClassDesc13.h:381
virtual RTI::AttributeHandle privilegeHandle() const
Returns the attribute handle of the privilegeToDelete attribute.
Definition: objClassDesc13.h:376
std::shared_ptr< DtObjectTagModifier > DtObjectTagModifierSP
Shared pointer typedefs for ease of use.
Definition: userTagModifiers.h:33
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual const RTI::AttributeHandleSet & ownAttrHandles() const
Get the set of non-inherited attribute handles for this class.
Definition: objClassDesc13.h:331
Contains the DtString class declaration.
void(* DtAttributeDecoder)(DtStateRepository *stateRep, const RTI::AttributeHandleValuePairSet &avlist, unsigned long pairSetIndex)
Attribute decoding function declaration.
Definition: hlaStateDecoder.h:53
Definition: vrlFederateAmbassador13.h:45
This file contains the declaration of DtHlaStateEncoder.
void(* DtAttributeEncoder)(const DtStateRepository &stateRep, RTI::AttributeHandleValuePairSet *avList, RTI::AttributeHandle handle)
Attribute encoding function declaration.
Definition: hlaStateEncoder.h:50
DtString myName
Definition: objClassDesc13.h:276
std::set< DtDDMRegionSP > DtDDMRegionSet
Definition: region13.h:34
virtual const RTI::AttributeHandleSet & attrHandleSet() const
Get the set of valid attribute handles for this class.
Definition: objClassDesc13.h:326
virtual const DtObjClassDesc * baseClass() const
Return a pointer to the base class's descriptor, NULL if none.
Definition: objClassDesc13.h:356
An instance of DtObjClassDesc is a "class descriptor" for an HLA Object class.
Definition: objClassDesc13.h:41
std::list< DtObjClassDesc * > myChildren
Definition: objClassDesc13.h:294
DtObjClassDesc * myBase
Definition: objClassDesc13.h:293
std::shared_ptr< DtDDMRegion > DtDDMRegionSP
Definition: region13.h:31
RTI::ObjectClassHandle myHandle
Definition: objClassDesc13.h:277
virtual void addChildClass(DtObjClassDesc *child)
Informs base class that it has a new child class.
Definition: objClassDesc13.h:366
virtual RTI::ObjectClassHandle handle() const
Get the object's class handle.
Definition: objClassDesc13.h:321
virtual int numAttributes() const
Get the number of attributes associated with this object, including privilege to delete.
Definition: objClassDesc13.h:351
virtual const char * name() const
Get the object's class handle.
Definition: objClassDesc13.h:346
RTI::AttributeHandle myPrivHandle
Handle of the privilegeToDelete attribute.
Definition: objClassDesc13.h:303
virtual const char * c_str() const
Returns a char* representation of the DtString;.
RTI::AttributeHandleSet * myOwnAttrs
Definition: objClassDesc13.h:279
virtual DtObjClassDesc * self() const
Casts away const-ness. Use with caution.
Definition: objClassDesc13.h:371
static double theSubscriptionTimeDelay
Definition: objClassDesc13.h:317
DtVrlRtiAmbassador is a pure virtual class, designed to provide a foundation for different ways to se...
Definition: vrlRtiAmbassador13.h:23
Instances of DtString are used to represent strings.
Definition: vlString.h:36
bool(* DtAttributeCheckerWithHandle)(const DtStateRepository &stateRep, const DtStateRepository &asSeenByRemote, RTI::AttributeHandle handle)
Attribute checking function declaration that takes a handle and checks the specific attribute pointed...
Definition: hlaStateEncoder.h:62
This file contains declarations of the classes DtObjectTagModifier and DtInteractionTagModifier.
This file contains typedefs for machine dependant types.
This file contains the declaration of DtHlaStateDecoder.