12 #ifndef RTI_STATE1516_H_
13 #define RTI_STATE1516_H_
26 class DtMomObserver :
public DtRtiAmbassadorObserver
30 static const DtMomArgument theDfltMomArgument;
31 static DtMomArgument theDfltRetVal;
34 DtMomObserver( DtMomMgr* momMgrPtr );
36 virtual ~DtMomObserver();
43 virtual unsigned long objectRegisterCount()
const;
47 virtual unsigned long objectDeleteCount()
const;
55 (std::wstring
const & federationExecutionName,
56 std::wstring
const & fullPathNameToTheFDDfile,
57 std::wstring
const & logicalTimeImplementationName,
58 rti1516::Exception* except=
NULL);
62 (std::wstring
const & federationExecutionName,
63 rti1516::Exception* except=
NULL);
67 (std::wstring
const & federateType,
68 std::wstring
const & federationExecutionName,
69 rti1516::FederateAmbassador & federateAmbassador,
71 rti1516::Exception* except=
NULL);
76 rti1516::Exception* except=
NULL);
80 (std::wstring
const & label,
81 rti1516::VariableLengthData
const & theUserSuppliedTag,
82 rti1516::Exception* except=
NULL);
85 (std::wstring
const & label,
86 rti1516::VariableLengthData
const & theUserSuppliedTag,
87 rti1516::FederateHandleSet
const & syncSet,
88 rti1516::Exception* except=
NULL);
92 (std::wstring
const & label,
93 rti1516::Exception* except=
NULL);
97 (std::wstring
const & label,
98 rti1516::Exception* except=
NULL);
101 (std::wstring
const & label,
102 rti1516::LogicalTime
const & theTime,
103 rti1516::Exception* except=
NULL);
107 rti1516::Exception* except=
NULL);
111 rti1516::Exception* except=
NULL);
114 rti1516::Exception* except=
NULL);
117 virtual void queryFederationSaveStatus (
118 rti1516::Exception* except=
NULL);
122 (std::wstring
const & label,
123 rti1516::Exception* except=
NULL);
127 rti1516::Exception* except=
NULL);
130 rti1516::Exception* except=
NULL);
133 virtual void queryFederationRestoreStatus (
134 rti1516::Exception* except=
NULL);
141 virtual void publishObjectClassAttributes
143 rti1516::AttributeHandleSet
const & attributeList,
144 rti1516::Exception* except=
NULL);
149 rti1516::Exception* except=
NULL);
151 virtual void unpublishObjectClassAttributes
153 rti1516::AttributeHandleSet
const & attributeList,
154 rti1516::Exception* except=
NULL);
159 rti1516::Exception* except=
NULL);
164 rti1516::Exception* except=
NULL);
169 rti1516::AttributeHandleSet
const & attributeList,
171 rti1516::Exception* except=
NULL);
176 rti1516::Exception* except=
NULL);
178 virtual void unsubscribeObjectClassAttributes
180 rti1516::AttributeHandleSet
const & attributeList,
181 rti1516::Exception* except=
NULL);
187 rti1516::Exception* except=
NULL);
192 rti1516::Exception* except=
NULL);
199 virtual void reserveObjectInstanceName
200 (std::wstring
const & theObjectInstanceName,
201 rti1516::Exception* except=
NULL);
206 rti1516::ObjectInstanceHandle objectHandle,
207 rti1516::Exception* except=
NULL);
211 std::wstring
const & theObjectInstanceName,
212 rti1516::ObjectInstanceHandle objectHandle,
213 rti1516::Exception* except=
NULL);
217 (rti1516::ObjectInstanceHandle theObject,
218 rti1516::AttributeHandleValueMap
const & theAttributeValues,
219 rti1516::VariableLengthData
const & theUserSuppliedTag,
220 rti1516::Exception* except=
NULL);
223 (rti1516::ObjectInstanceHandle theObject,
224 rti1516::AttributeHandleValueMap
const & theAttributeValues,
225 rti1516::VariableLengthData
const & theUserSuppliedTag,
226 rti1516::LogicalTime
const & theTime,
227 rti1516::MessageRetractionHandle retractHandle,
228 rti1516::Exception* except=
NULL);
233 rti1516::ParameterHandleValueMap
const & theParameterValues,
234 rti1516::VariableLengthData
const & theUserSuppliedTag,
235 rti1516::Exception* except=
NULL);
239 rti1516::ParameterHandleValueMap
const & theParameterValues,
240 rti1516::VariableLengthData
const & theUserSuppliedTag,
241 rti1516::LogicalTime
const & theTime,
242 rti1516::MessageRetractionHandle retractHandle,
243 rti1516::Exception* except=
NULL);
247 (rti1516::ObjectInstanceHandle theObject,
248 rti1516::VariableLengthData
const & theUserSuppliedTag,
249 rti1516::Exception* except=
NULL);
252 (rti1516::ObjectInstanceHandle theObject,
253 rti1516::VariableLengthData
const & theUserSuppliedTag,
254 rti1516::LogicalTime
const & theTime,
255 rti1516::MessageRetractionHandle retractHandle,
256 rti1516::Exception* except=
NULL);
260 (rti1516::ObjectInstanceHandle theObject,
261 rti1516::Exception* except=
NULL);
265 (rti1516::ObjectInstanceHandle theObject,
266 rti1516::AttributeHandleSet
const & theAttributes,
267 rti1516::TransportationType theType,
268 rti1516::Exception* except=
NULL);
273 rti1516::TransportationType theType,
274 rti1516::Exception* except=
NULL);
277 virtual void requestAttributeValueUpdate
278 (rti1516::ObjectInstanceHandle theObject,
279 rti1516::AttributeHandleSet
const & theAttributes,
280 rti1516::VariableLengthData
const & theUserSuppliedTag,
281 rti1516::Exception* except=
NULL);
283 virtual void requestAttributeValueUpdate
285 rti1516::AttributeHandleSet
const & theAttributes,
286 rti1516::VariableLengthData
const & theUserSuppliedTag,
287 rti1516::Exception* except=
NULL);
295 (rti1516::ObjectInstanceHandle theObject,
296 rti1516::AttributeHandleSet
const & theAttributes,
297 rti1516::Exception* except=
NULL);
301 (rti1516::ObjectInstanceHandle theObject,
302 rti1516::AttributeHandleSet
const & theAttributes,
303 rti1516::VariableLengthData
const & theUserSuppliedTag,
304 rti1516::Exception* except=
NULL);
307 virtual void confirmDivestiture
308 (rti1516::ObjectInstanceHandle theObject,
309 rti1516::AttributeHandleSet
const & confirmedAttributes,
310 rti1516::VariableLengthData
const & theUserSuppliedTag,
311 rti1516::Exception* except=
NULL);
315 (rti1516::ObjectInstanceHandle theObject,
316 rti1516::AttributeHandleSet
const & desiredAttributes,
317 rti1516::VariableLengthData
const & theUserSuppliedTag,
318 rti1516::Exception* except=
NULL);
322 (rti1516::ObjectInstanceHandle theObject,
323 rti1516::AttributeHandleSet
const & desiredAttributes,
324 rti1516::Exception* except=
NULL);
327 virtual void attributeOwnershipDivestitureIfWanted
328 (rti1516::ObjectInstanceHandle theObject,
329 rti1516::AttributeHandleSet
const & theAttributes,
330 rti1516::AttributeHandleSet & theDivestedAttributes,
331 rti1516::Exception* except=
NULL);
335 (rti1516::ObjectInstanceHandle theObject,
336 rti1516::AttributeHandleSet
const & theAttributes,
337 rti1516::Exception* except=
NULL);
341 (rti1516::ObjectInstanceHandle theObject,
342 rti1516::AttributeHandleSet
const & theAttributes,
343 rti1516::Exception* except=
NULL);
347 (rti1516::ObjectInstanceHandle theObject,
349 rti1516::Exception* except=
NULL);
353 (rti1516::ObjectInstanceHandle theObject,
356 rti1516::Exception* except=
NULL);
364 (rti1516::LogicalTimeInterval
const & theLookahead,
365 rti1516::Exception* except=
NULL);
369 rti1516::Exception* except=
NULL);
373 rti1516::Exception* except=
NULL);
377 rti1516::Exception* except=
NULL);
381 (rti1516::LogicalTime
const & theTime,
382 rti1516::Exception* except=
NULL);
386 (rti1516::LogicalTime
const & theTime,
387 rti1516::Exception* except=
NULL);
390 virtual void nextMessageRequest
391 (rti1516::LogicalTime
const & theTime,
392 rti1516::Exception* except=
NULL);
395 virtual void nextMessageRequestAvailable
396 (rti1516::LogicalTime
const & theTime,
397 rti1516::Exception* except=
NULL);
401 (rti1516::LogicalTime
const & theTime,
402 rti1516::Exception* except=
NULL);
406 rti1516::Exception* except=
NULL);
410 rti1516::Exception* except=
NULL);
413 virtual void queryGALT (rti1516::LogicalTime & theTime,
415 rti1516::Exception* except=
NULL);
418 virtual void queryLogicalTime (rti1516::LogicalTime & theTime,
419 rti1516::Exception* except=
NULL);
422 virtual void queryLITS (rti1516::LogicalTime & theTime,
424 rti1516::Exception* except=
NULL);
428 (rti1516::LogicalTimeInterval
const & theLookahead,
429 rti1516::Exception* except=
NULL);
432 virtual void queryLookahead (rti1516::LogicalTimeInterval & interval,
433 rti1516::Exception* except=
NULL);
437 (rti1516::MessageRetractionHandle theHandle,
438 rti1516::Exception* except=
NULL);
442 (rti1516::ObjectInstanceHandle theObject,
443 rti1516::AttributeHandleSet
const & theAttributes,
445 rti1516::Exception* except=
NULL);
451 rti1516::Exception* except=
NULL);
459 (rti1516::DimensionHandleSet
const & theDimensions,
460 rti1516::RegionHandle handle,
461 rti1516::Exception* except=
NULL);
464 virtual void commitRegionModifications
465 (rti1516::RegionHandleSet
const & theRegionHandleSet,
466 rti1516::Exception* except=
NULL);
470 (rti1516::RegionHandle theRegion,
471 rti1516::Exception* except=
NULL);
474 virtual void registerObjectInstanceWithRegions
476 rti1516::AttributeHandleSetRegionHandleSetPairVector
const &
477 theAttributeHandleSetRegionHandleSetPairVector,
478 rti1516::ObjectInstanceHandle objectHandle,
479 rti1516::Exception* except=
NULL);
481 virtual void registerObjectInstanceWithRegions
483 rti1516::AttributeHandleSetRegionHandleSetPairVector
const &
484 theAttributeHandleSetRegionHandleSetPairVector,
485 std::wstring
const & theObjectInstanceName,
486 rti1516::ObjectInstanceHandle objectHandle,
487 rti1516::Exception* except=
NULL);
490 virtual void associateRegionsForUpdates
491 (rti1516::ObjectInstanceHandle theObject,
492 rti1516::AttributeHandleSetRegionHandleSetPairVector
const &
493 theAttributeHandleSetRegionHandleSetPairVector,
494 rti1516::Exception* except=
NULL);
497 virtual void unassociateRegionsForUpdates
498 (rti1516::ObjectInstanceHandle theObject,
499 rti1516::AttributeHandleSetRegionHandleSetPairVector
const &
500 theAttributeHandleSetRegionHandleSetPairVector,
501 rti1516::Exception* except=
NULL);
504 virtual void subscribeObjectClassAttributesWithRegions
506 rti1516::AttributeHandleSetRegionHandleSetPairVector
const &
507 theAttributeHandleSetRegionHandleSetPairVector,
509 rti1516::Exception* except=
NULL);
512 virtual void unsubscribeObjectClassAttributesWithRegions
514 rti1516::AttributeHandleSetRegionHandleSetPairVector
const &
515 theAttributeHandleSetRegionHandleSetPairVector,
516 rti1516::Exception* except=
NULL);
519 virtual void subscribeInteractionClassWithRegions
521 rti1516::RegionHandleSet
const & theRegionHandleSet,
523 rti1516::Exception* except=
NULL);
526 virtual void unsubscribeInteractionClassWithRegions
528 rti1516::RegionHandleSet
const & theRegionHandleSet,
529 rti1516::Exception* except=
NULL);
532 virtual void sendInteractionWithRegions
534 rti1516::ParameterHandleValueMap
const & theParameterValues,
535 rti1516::RegionHandleSet
const & theRegionHandleSet,
536 rti1516::VariableLengthData
const & theUserSuppliedTag,
537 rti1516::Exception* except=
NULL);
539 virtual void sendInteractionWithRegions
541 rti1516::ParameterHandleValueMap
const & theParameterValues,
542 rti1516::RegionHandleSet
const & theRegionHandleSet,
543 rti1516::VariableLengthData
const & theUserSuppliedTag,
544 rti1516::LogicalTime
const & theTime,
545 rti1516::MessageRetractionHandle retractHandle,
546 rti1516::Exception* except=
NULL);
549 virtual void requestAttributeValueUpdateWithRegions
551 rti1516::AttributeHandleSetRegionHandleSetPairVector
const & theSet,
552 rti1516::VariableLengthData
const & theUserSuppliedTag,
553 rti1516::Exception* except=
NULL);
561 (std::wstring
const & theName,
563 rti1516::Exception* except=
NULL);
569 rti1516::Exception* except=
NULL);
574 std::wstring
const & theAttributeName,
576 rti1516::Exception* except=
NULL);
583 rti1516::Exception* except=
NULL);
587 (std::wstring
const & theName,
589 rti1516::Exception* except=
NULL);
595 rti1516::Exception* except=
NULL);
600 std::wstring
const & theName,
602 rti1516::Exception* except=
NULL);
609 rti1516::Exception* except=
NULL);
613 (std::wstring
const & theName,
614 rti1516::ObjectInstanceHandle objectHandle,
615 rti1516::Exception* except=
NULL);
619 (rti1516::ObjectInstanceHandle theHandle,
621 rti1516::Exception* except=
NULL);
625 (std::wstring
const & theName,
627 rti1516::Exception* except=
NULL);
633 rti1516::Exception* except=
NULL);
636 virtual void getDimensionUpperBound
638 unsigned long upperBound,
639 rti1516::Exception* except=
NULL);
642 virtual void getAvailableDimensionsForClassAttribute
645 rti1516::DimensionHandleSet handleSet,
646 rti1516::Exception* except=
NULL);
649 virtual void getKnownObjectClassHandle
650 (rti1516::ObjectInstanceHandle theObject,
652 rti1516::Exception* except=
NULL);
655 virtual void getAvailableDimensionsForInteractionClass
657 rti1516::DimensionHandleSet handleSet,
658 rti1516::Exception* except=
NULL);
661 virtual void getTransportationType
662 (std::wstring
const & transportationName,
663 rti1516::TransportationType type,
664 rti1516::Exception* except=
NULL);
668 (rti1516::TransportationType transportationType,
670 rti1516::Exception* except=
NULL);
673 virtual void getOrderType
674 (std::wstring
const & orderName,
676 rti1516::Exception* except=
NULL);
679 virtual void getOrderName
682 rti1516::Exception* except=
NULL);
685 virtual void enableObjectClassRelevanceAdvisorySwitch (
686 rti1516::Exception* except=
NULL);
689 virtual void disableObjectClassRelevanceAdvisorySwitch (
690 rti1516::Exception* except=
NULL);
694 rti1516::Exception* except=
NULL);
698 rti1516::Exception* except=
NULL);
702 rti1516::Exception* except=
NULL);
706 rti1516::Exception* except=
NULL);
710 rti1516::Exception* except=
NULL);
714 rti1516::Exception* except=
NULL);
717 virtual void getDimensionHandleSet
718 (rti1516::RegionHandle theRegionHandle,
719 rti1516::DimensionHandleSet handleSet,
720 rti1516::Exception* except=
NULL);
723 virtual void getRangeBounds
724 (rti1516::RegionHandle theRegionHandle,
726 rti1516::RangeBounds bounds,
727 rti1516::Exception* except=
NULL);
730 virtual void setRangeBounds
731 (rti1516::RegionHandle theRegionHandle,
733 rti1516::RangeBounds
const & theRangeBounds,
734 rti1516::Exception* except=
NULL);
737 virtual void normalizeFederateHandle
739 unsigned long normal,
740 rti1516::Exception* except=
NULL);
743 virtual void normalizeServiceGroup
744 (rti1516::ServiceGroupIndicator theServiceGroup,
745 unsigned long normal,
746 rti1516::Exception* except=
NULL);
752 virtual void evokeCallback(
double approximateMinimumTimeInSeconds,
754 rti1516::Exception* except=
NULL);
757 virtual void evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
758 double approximateMaximumTimeInSeconds,
760 rti1516::Exception* except=
NULL);
764 virtual void enableCallbacks (
765 rti1516::Exception* except=
NULL);
768 virtual void disableCallbacks (
769 rti1516::Exception* except=
NULL);
771 virtual void decodeFederateHandle(
772 rti1516::VariableLengthData
const & encodedValue,
774 rti1516::Exception* except=
NULL)
const;
776 virtual void decodeObjectClassHandle(
777 rti1516::VariableLengthData
const & encodedValue,
779 rti1516::Exception* except=
NULL)
const;
781 virtual void decodeInteractionClassHandle(
782 rti1516::VariableLengthData
const & encodedValue,
784 rti1516::Exception* except=
NULL)
const;
786 virtual void decodeObjectInstanceHandle(
787 rti1516::VariableLengthData
const & encodedValue,
788 rti1516::ObjectInstanceHandle objectHandle,
789 rti1516::Exception* except=
NULL)
const;
791 virtual void decodeAttributeHandle(
792 rti1516::VariableLengthData
const & encodedValue,
794 rti1516::Exception* except=
NULL)
const;
796 virtual void decodeParameterHandle(
797 rti1516::VariableLengthData
const & encodedValue,
799 rti1516::Exception* except=
NULL)
const;
801 virtual void decodeDimensionHandle(
802 rti1516::VariableLengthData
const & encodedValue,
804 rti1516::Exception* except=
NULL)
const;
806 virtual void decodeMessageRetractionHandle(
807 rti1516::VariableLengthData
const & encodedValue,
808 rti1516::MessageRetractionHandle retractHandle,
809 rti1516::Exception* except=
NULL)
const;
811 virtual void decodeRegionHandle(
812 rti1516::VariableLengthData
const & encodedValue,
813 rti1516::RegionHandle handle,
814 rti1516::Exception* except=
NULL)
const;
818 virtual int verboseLevel()
const;
827 unsigned long myRegisterCount;
828 unsigned long myDeleteCount;