12 #if DtHLA && !DtHLA_1516
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;
81 virtual int isOfClass(RTI::ObjectClassHandle hand)
const;
85 virtual int numAttributes()
const;
88 virtual bool hasAttribute(
const char*
attrName)
const;
91 virtual int minAttrHandle()
const;
92 virtual int maxAttrHandle()
const;
96 virtual const RTI::AttributeHandleSet& attrHandleSet()
const;
99 virtual const RTI::AttributeHandleSet& ownAttrHandles()
const;
107 virtual bool classNeededByFederation();
113 virtual void publish();
114 virtual void publish(
const RTI::AttributeHandleSet& hSet);
117 virtual void unpublish();
122 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
bool active);
127 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
DtDDMRegionSP region,
bool active);
131 virtual void subscribe();
133 virtual void subscribe(
const RTI::AttributeHandleSet& hSet);
134 virtual void subscribe(
const RTI::AttributeHandleSet& hSet,
DtDDMRegionSP region);
136 virtual void passiveSubscribe();
139 virtual void unsubscribe();
144 virtual void requestUpdates();
146 virtual void requestUpdates(
const RTI::AttributeHandleSet& hSet);
147 virtual void requestUpdates(
const RTI::AttributeHandleSet& hSet,
153 virtual const RTI::AttributeHandleSet& publishedAttrs()
const;
157 virtual bool everPublished()
const;
162 virtual const RTI::AttributeHandleSet& subscribedAttrs()
const;
164 virtual const RTI::AttributeHandleSet& attributesWithSpace()
const;
165 virtual const RTI::AttributeHandleSet& attributesWithoutSpace()
const;
167 virtual const RTI::AttributeHandleSet& subscribedAttrsWithSpace()
const;
168 virtual const RTI::AttributeHandleSet& subscribedAttrsWithoutSpace()
const;
176 virtual bool everSubscribed()
const;
185 virtual RTI::AttributeHandle privilegeHandle()
const;
197 virtual void setSubscribeToUnspecifiedAttributesFlag(
bool subscribe);
198 virtual bool subscribeToUnspecifiedAttributesFlag();
206 virtual void enableUnknownAttributes();
210 virtual void setUnknownAttributeEncoder(
215 virtual void setUnknownAttributeChecker(
221 virtual void setUnknownAttributeDecoder(
236 static void setMaxAttributes(
int num);
237 static int maxAttributes();
244 static void setSubscriptionTimeDelay(
double delay);
249 static void startRegCb(RTI::ObjectClassHandle h,
253 static void stopRegCb(RTI::ObjectClassHandle h,
259 virtual void processStartReg(RTI::ObjectClassHandle h);
262 virtual void processStopReg(RTI::ObjectClassHandle h);
269 virtual void synchSubscribedAttributes();
272 virtual void addAttr(
const char*
attrName, RTI::AttributeHandle attrHandle,
273 bool isPrivilegeToDelete,
bool withSpace =
false);
277 RTI::ObjectClassHandle myHandle;
278 RTI::AttributeHandleSet* myAttrs;
279 RTI::AttributeHandleSet* myOwnAttrs;
280 RTI::AttributeHandleSet* mySubAttrs;
281 RTI::AttributeHandleSet* myPubAttrs;
284 RTI::AttributeHandleSet* myAttrsWithSpace;
287 RTI::AttributeHandleSet* myAttrsWithoutSpace;
289 RTI::AttributeHandleSet* mySubAttrsWithSpace;
290 RTI::AttributeHandleSet* mySubAttrsWithoutSpace;
294 std::list<DtObjClassDesc*> myChildren;
297 bool myEverPublished;
298 bool myEverSubscribed;
299 int myNumSubscribeRequests;
300 bool mySubscribeToUnspecifiedAttributesFlag;
303 RTI::AttributeHandle myPrivHandle;
304 RTI::AttributeHandle myMinAttrHand;
305 RTI::AttributeHandle myMaxAttrHand;
307 typedef std::map<RTI::AttributeHandle, DtString> StringToAttributeHandleMap;
308 StringToAttributeHandleMap myStringToHandleMap;
311 std::vector<DtDDMRegionSP> mySubscribedRegions;
316 static int theMaxAttrs;
317 static double theSubscriptionTimeDelay;
336 inline int DtObjClassDesc::maxAttributes()
341 inline void DtObjClassDesc::setMaxAttributes(
int num)