24 typedef DtMomObserver* (*DtMomObserverCreator)(DtMomMgr* momMgrPtr);
26 class DtMomObserver :
public DtRtiAmbassadorObserver
31 static DtMomObserver* create(DtMomMgr* momMgrPtr);
32 static void setCreator(DtMomObserverCreator functionPtr);
36 DtMomObserver( DtMomMgr* momMgrPtr );
39 virtual ~DtMomObserver();
46 virtual unsigned long objectRegisterCount()
const;
50 virtual unsigned long objectDeleteCount()
const;
56 virtual void createFederationExecution
58 (std::wstring
const & federationExecutionName,
59 std::wstring
const & fullPathNameToTheFDDfile,
60 std::wstring
const & logicalTimeImplementationName,
64 virtual void destroyFederationExecution
65 (std::wstring
const & federationExecutionName,
69 virtual void joinFederationExecution
70 (std::wstring
const & federateType,
71 std::wstring
const & federationExecutionName,
73 rti1516::FederateHandle federateHandle,
77 virtual void resignFederationExecution
82 virtual void registerFederationSynchronizationPoint
83 (std::wstring
const & label,
87 virtual void registerFederationSynchronizationPoint
88 (std::wstring
const & label,
94 virtual void synchronizationPointAchieved
95 (std::wstring
const & label,
99 virtual void requestFederationSave
100 (std::wstring
const & label,
103 virtual void requestFederationSave
104 (std::wstring
const & label,
109 virtual void federateSaveBegun (
113 virtual void federateSaveComplete (
116 virtual void federateSaveNotComplete(
120 virtual void queryFederationSaveStatus (
124 virtual void requestFederationRestore
125 (std::wstring
const & label,
129 virtual void federateRestoreComplete (
132 virtual void federateRestoreNotComplete (
136 virtual void queryFederationRestoreStatus (
144 virtual void publishObjectClassAttributes
145 (rti1516::ObjectClassHandle theClass,
150 virtual void unpublishObjectClass
151 (rti1516::ObjectClassHandle theClass,
154 virtual void unpublishObjectClassAttributes
155 (rti1516::ObjectClassHandle theClass,
160 virtual void publishInteractionClass
161 (rti1516::InteractionClassHandle theInteraction,
165 virtual void unpublishInteractionClass
166 (rti1516::InteractionClassHandle theInteraction,
170 virtual void subscribeObjectClassAttributes
171 (rti1516::ObjectClassHandle theClass,
177 virtual void unsubscribeObjectClass
178 (rti1516::ObjectClassHandle theClass,
181 virtual void unsubscribeObjectClassAttributes
182 (rti1516::ObjectClassHandle theClass,
187 virtual void subscribeInteractionClass
188 (rti1516::InteractionClassHandle theClass,
193 virtual void unsubscribeInteractionClass
194 (rti1516::InteractionClassHandle theClass,
202 virtual void reserveObjectInstanceName
203 (std::wstring
const & theObjectInstanceName,
207 virtual void registerObjectInstance
208 (rti1516::ObjectClassHandle theClass,
209 rti1516::ObjectInstanceHandle objectHandle,
212 virtual void registerObjectInstance
213 (rti1516::ObjectClassHandle theClass,
214 std::wstring
const & theObjectInstanceName,
215 rti1516::ObjectInstanceHandle objectHandle,
219 virtual void updateAttributeValues
220 (rti1516::ObjectInstanceHandle theObject,
225 virtual void updateAttributeValues
226 (rti1516::ObjectInstanceHandle theObject,
230 rti1516::MessageRetractionHandle retractHandle,
234 virtual void sendInteraction
235 (rti1516::InteractionClassHandle theInteraction,
240 virtual void sendInteraction
241 (rti1516::InteractionClassHandle theInteraction,
245 rti1516::MessageRetractionHandle retractHandle,
249 virtual void deleteObjectInstance
250 (rti1516::ObjectInstanceHandle theObject,
254 virtual void deleteObjectInstance
255 (rti1516::ObjectInstanceHandle theObject,
258 rti1516::MessageRetractionHandle retractHandle,
262 virtual void localDeleteObjectInstance
263 (rti1516::ObjectInstanceHandle theObject,
267 virtual void changeAttributeTransportationType
268 (rti1516::ObjectInstanceHandle theObject,
274 virtual void changeInteractionTransportationType
275 (rti1516::InteractionClassHandle theClass,
280 virtual void requestAttributeValueUpdate
281 (rti1516::ObjectInstanceHandle theObject,
286 virtual void requestAttributeValueUpdate
287 (rti1516::ObjectClassHandle theClass,
297 virtual void unconditionalAttributeOwnershipDivestiture
298 (rti1516::ObjectInstanceHandle theObject,
303 virtual void negotiatedAttributeOwnershipDivestiture
304 (rti1516::ObjectInstanceHandle theObject,
310 virtual void confirmDivestiture
311 (rti1516::ObjectInstanceHandle theObject,
317 virtual void attributeOwnershipAcquisition
318 (rti1516::ObjectInstanceHandle theObject,
324 virtual void attributeOwnershipAcquisitionIfAvailable
325 (rti1516::ObjectInstanceHandle theObject,
330 virtual void attributeOwnershipDivestitureIfWanted
331 (rti1516::ObjectInstanceHandle theObject,
337 virtual void cancelNegotiatedAttributeOwnershipDivestiture
338 (rti1516::ObjectInstanceHandle theObject,
343 virtual void cancelAttributeOwnershipAcquisition
344 (rti1516::ObjectInstanceHandle theObject,
349 virtual void queryAttributeOwnership
350 (rti1516::ObjectInstanceHandle theObject,
351 rti1516::AttributeHandle theAttribute,
355 virtual void isAttributeOwnedByFederate
356 (rti1516::ObjectInstanceHandle theObject,
357 rti1516::AttributeHandle theAttribute,
366 virtual void enableTimeRegulation
371 virtual void disableTimeRegulation (
375 virtual void enableTimeConstrained (
379 virtual void disableTimeConstrained (
383 virtual void timeAdvanceRequest
388 virtual void timeAdvanceRequestAvailable
393 virtual void nextMessageRequest
398 virtual void nextMessageRequestAvailable
403 virtual void flushQueueRequest
408 virtual void enableAsynchronousDelivery (
412 virtual void disableAsynchronousDelivery (
430 virtual void modifyLookahead
440 (rti1516::MessageRetractionHandle theHandle,
444 virtual void changeAttributeOrderType
445 (rti1516::ObjectInstanceHandle theObject,
451 virtual void changeInteractionOrderType
452 (rti1516::InteractionClassHandle theClass,
461 virtual void createRegion
463 rti1516::RegionHandle handle,
467 virtual void commitRegionModifications
472 virtual void deleteRegion
473 (rti1516::RegionHandle theRegion,
477 virtual void registerObjectInstanceWithRegions
478 (rti1516::ObjectClassHandle theClass,
480 theAttributeHandleSetRegionHandleSetPairVector,
481 rti1516::ObjectInstanceHandle objectHandle,
484 virtual void registerObjectInstanceWithRegions
485 (rti1516::ObjectClassHandle theClass,
487 theAttributeHandleSetRegionHandleSetPairVector,
488 std::wstring
const & theObjectInstanceName,
489 rti1516::ObjectInstanceHandle objectHandle,
493 virtual void associateRegionsForUpdates
494 (rti1516::ObjectInstanceHandle theObject,
496 theAttributeHandleSetRegionHandleSetPairVector,
500 virtual void unassociateRegionsForUpdates
501 (rti1516::ObjectInstanceHandle theObject,
503 theAttributeHandleSetRegionHandleSetPairVector,
507 virtual void subscribeObjectClassAttributesWithRegions
508 (rti1516::ObjectClassHandle theClass,
510 theAttributeHandleSetRegionHandleSetPairVector,
515 virtual void unsubscribeObjectClassAttributesWithRegions
516 (rti1516::ObjectClassHandle theClass,
518 theAttributeHandleSetRegionHandleSetPairVector,
522 virtual void subscribeInteractionClassWithRegions
523 (rti1516::InteractionClassHandle theClass,
529 virtual void unsubscribeInteractionClassWithRegions
530 (rti1516::InteractionClassHandle theClass,
535 virtual void sendInteractionWithRegions
536 (rti1516::InteractionClassHandle theInteraction,
542 virtual void sendInteractionWithRegions
543 (rti1516::InteractionClassHandle theInteraction,
548 rti1516::MessageRetractionHandle retractHandle,
552 virtual void requestAttributeValueUpdateWithRegions
553 (rti1516::ObjectClassHandle theClass,
563 virtual void getObjectClassHandle
564 (std::wstring
const & theName,
565 rti1516::ObjectClassHandle classHandle,
569 virtual void getObjectClassName
570 (rti1516::ObjectClassHandle theHandle,
575 virtual void getAttributeHandle
576 (rti1516::ObjectClassHandle whichClass,
577 std::wstring
const & theAttributeName,
578 rti1516::AttributeHandle handle,
582 virtual void getAttributeName
583 (rti1516::ObjectClassHandle whichClass,
584 rti1516::AttributeHandle theHandle,
589 virtual void getInteractionClassHandle
590 (std::wstring
const & theName,
591 rti1516::InteractionClassHandle handle,
595 virtual void getInteractionClassName
596 (rti1516::InteractionClassHandle theHandle,
601 virtual void getParameterHandle
602 (rti1516::InteractionClassHandle whichClass,
603 std::wstring
const & theName,
604 rti1516::ParameterHandle handle,
608 virtual void getParameterName
609 (rti1516::InteractionClassHandle whichClass,
610 rti1516::ParameterHandle theHandle,
615 virtual void getObjectInstanceHandle
616 (std::wstring
const & theName,
617 rti1516::ObjectInstanceHandle objectHandle,
621 virtual void getObjectInstanceName
622 (rti1516::ObjectInstanceHandle theHandle,
627 virtual void getDimensionHandle
628 (std::wstring
const & theName,
629 rti1516::DimensionHandle handle,
633 virtual void getDimensionName
634 (rti1516::DimensionHandle theHandle,
639 virtual void getDimensionUpperBound
640 (rti1516::DimensionHandle theHandle,
641 unsigned long upperBound,
645 virtual void getAvailableDimensionsForClassAttribute
646 (rti1516::ObjectClassHandle theClass,
647 rti1516::AttributeHandle theHandle,
652 virtual void getKnownObjectClassHandle
653 (rti1516::ObjectInstanceHandle theObject,
654 rti1516::ObjectClassHandle classHandle,
658 virtual void getAvailableDimensionsForInteractionClass
659 (rti1516::InteractionClassHandle theClass,
664 virtual void getTransportationType
665 (std::wstring
const & transportationName,
670 virtual void getTransportationName
676 virtual void getOrderType
677 (std::wstring
const & orderName,
682 virtual void getOrderName
688 virtual void enableObjectClassRelevanceAdvisorySwitch (
692 virtual void disableObjectClassRelevanceAdvisorySwitch (
696 virtual void enableAttributeRelevanceAdvisorySwitch (
700 virtual void disableAttributeRelevanceAdvisorySwitch (
704 virtual void enableAttributeScopeAdvisorySwitch (
708 virtual void disableAttributeScopeAdvisorySwitch (
712 virtual void enableInteractionRelevanceAdvisorySwitch (
716 virtual void disableInteractionRelevanceAdvisorySwitch (
720 virtual void getDimensionHandleSet
721 (rti1516::RegionHandle theRegionHandle,
726 virtual void getRangeBounds
727 (rti1516::RegionHandle theRegionHandle,
728 rti1516::DimensionHandle theDimensionHandle,
733 virtual void setRangeBounds
734 (rti1516::RegionHandle theRegionHandle,
735 rti1516::DimensionHandle theDimensionHandle,
740 virtual void normalizeFederateHandle
741 (rti1516::FederateHandle theFederateHandle,
742 unsigned long normal,
746 virtual void normalizeServiceGroup
748 unsigned long normal,
754 virtual void evokeCallback(
double approximateMinimumTimeInSeconds,
759 virtual void evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
760 double approximateMaximumTimeInSeconds,
765 virtual void enableCallbacks (
769 virtual void disableCallbacks (
772 virtual void decodeFederateHandle(
774 rti1516::FederateHandle handle,
777 virtual void decodeObjectClassHandle(
779 rti1516::ObjectClassHandle classHandle,
782 virtual void decodeInteractionClassHandle(
784 rti1516::InteractionClassHandle handle,
787 virtual void decodeObjectInstanceHandle(
789 rti1516::ObjectInstanceHandle objectHandle,
792 virtual void decodeAttributeHandle(
794 rti1516::AttributeHandle handle,
797 virtual void decodeParameterHandle(
799 rti1516::ParameterHandle handle,
802 virtual void decodeDimensionHandle(
804 rti1516::DimensionHandle handle,
807 virtual void decodeMessageRetractionHandle(
809 rti1516::MessageRetractionHandle retractHandle,
812 virtual void decodeRegionHandle(
814 rti1516::RegionHandle handle,
819 virtual int verboseLevel()
const;
828 unsigned long myRegisterCount;
829 unsigned long myDeleteCount;
830 bool myAllowEvokeCallbackToBeObserved;
832 static const DtMomArgument theDfltMomArgument;
833 static const DtMomArgument theDfltRetVal;
834 static DtMomObserverCreator theCreator;
Definition: Exception.h:18
OrderType
Definition: Enums.h:13
std::set< RegionHandle > RegionHandleSet
Definition: Typedefs.h:31
std::set< DimensionHandle > DimensionHandleSet
Definition: Typedefs.h:30
Instances of DtFederateMgr process federation-level messages (such as create, destroy, join, resign, and sync points) and manages the objects responsible for handling general communication, objects, interactions, the FOM, MOM, and data distribution mmg.
Definition: fedMgr.h:93
ServiceGroupIndicator
Definition: Enums.h:64
std::map< ParameterHandle, VariableLengthData > ParameterHandleValueMap
Definition: Typedefs.h:41
Definition: LogicalTimeInterval.h:27
std::map< AttributeHandle, VariableLengthData > AttributeHandleValueMap
Definition: Typedefs.h:36
The object manager class processes the object management services.
Definition: objMgr.h:81
std::set< AttributeHandle > AttributeHandleSet
Definition: Typedefs.h:27
Definition: FederateAmbassador.h:24
std::vector< AttributeHandleSetRegionHandleSetPair > AttributeHandleSetRegionHandleSetPairVector
Definition: Typedefs.h:49
Definition: VariableLengthData.h:22
std::set< FederateHandle > FederateHandleSet
Definition: Typedefs.h:29
Definition: LogicalTime.h:27
Definition: RangeBounds.h:13
ResignAction
Definition: Enums.h:19
TransportationType
Definition: Enums.h:84