9 #ifndef DtLoggingRtiAmbassador_H_
10 #define DtLoggingRtiAmbassador_H_
19 class DtNetStatsFedAmbWrapper;
28 class DtNetStatsRtiAmbImpl :
public DtRtiAmbassadorImplementor
33 DtNetStatsRtiAmbImpl( RTI::RTIambassador *topLevelAmbPtr)
36 RTI::RTIinternalError);
45 virtual ~DtNetStatsRtiAmbImpl()
46 throw (RTI::RTIinternalError);
48 virtual
void createFederationExecution (
49 const
char *executionName,
52 RTI::FederationExecutionAlreadyExists,
55 RTI::ConcurrentAccessAttempted,
56 RTI::RTIinternalError);
59 virtual
void destroyFederationExecution (
60 const
char *executionName)
62 RTI::FederatesCurrentlyJoined,
63 RTI::FederationExecutionDoesNotExist,
64 RTI::ConcurrentAccessAttempted,
65 RTI::RTIinternalError);
68 virtual RTI::FederateHandle joinFederationExecution (
70 const
char *executionName,
71 RTI::FederateAmbassador* federateAmbassadorReference,
74 RTI::FederateAlreadyExecutionMember,
75 RTI::FederationExecutionDoesNotExist,
78 RTI::ConcurrentAccessAttempted,
80 RTI::RestoreInProgress,
81 RTI::RTIinternalError);
84 virtual
void resignFederationExecution (
87 RTI::FederateOwnsAttributes,
88 RTI::FederateNotExecutionMember,
89 RTI::InvalidResignAction,
90 RTI::ConcurrentAccessAttempted,
91 RTI::RTIinternalError);
94 virtual
void registerFederationSynchronizationPoint (
98 RTI::FederateNotExecutionMember,
99 RTI::ConcurrentAccessAttempted,
101 RTI::RestoreInProgress,
102 RTI::RTIinternalError);
104 virtual
void registerFederationSynchronizationPoint (
109 RTI::FederateNotExecutionMember,
110 RTI::ConcurrentAccessAttempted,
112 RTI::RestoreInProgress,
113 RTI::RTIinternalError);
116 virtual
void synchronizationPointAchieved (
119 RTI::SynchronizationPointLabelWasNotAnnounced,
120 RTI::FederateNotExecutionMember,
121 RTI::ConcurrentAccessAttempted,
123 RTI::RestoreInProgress,
124 RTI::RTIinternalError);
127 virtual
void requestFederationSave (
129 const RTI::FedTime& theTime)
131 RTI::FederationTimeAlreadyPassed,
132 RTI::InvalidFederationTime,
133 RTI::FederateNotExecutionMember,
134 RTI::ConcurrentAccessAttempted,
136 RTI::RestoreInProgress,
137 RTI::RTIinternalError);
139 virtual
void requestFederationSave (
142 RTI::FederateNotExecutionMember,
143 RTI::ConcurrentAccessAttempted,
145 RTI::RestoreInProgress,
146 RTI::RTIinternalError);
149 virtual
void federateSaveBegun ()
151 RTI::SaveNotInitiated,
152 RTI::FederateNotExecutionMember,
153 RTI::ConcurrentAccessAttempted,
154 RTI::RestoreInProgress,
155 RTI::RTIinternalError);
158 virtual
void federateSaveComplete ()
160 RTI::SaveNotInitiated,
161 RTI::FederateNotExecutionMember,
162 RTI::ConcurrentAccessAttempted,
163 RTI::RestoreInProgress,
164 RTI::RTIinternalError);
166 virtual
void federateSaveNotComplete ()
168 RTI::SaveNotInitiated,
169 RTI::FederateNotExecutionMember,
170 RTI::ConcurrentAccessAttempted,
171 RTI::RestoreInProgress,
172 RTI::RTIinternalError);
175 virtual
void requestFederationRestore (
178 RTI::FederateNotExecutionMember,
179 RTI::ConcurrentAccessAttempted,
181 RTI::RestoreInProgress,
182 RTI::RTIinternalError);
185 virtual
void federateRestoreComplete ()
187 RTI::RestoreNotRequested,
188 RTI::FederateNotExecutionMember,
189 RTI::ConcurrentAccessAttempted,
191 RTI::RTIinternalError);
193 virtual
void federateRestoreNotComplete ()
195 RTI::RestoreNotRequested,
196 RTI::FederateNotExecutionMember,
197 RTI::ConcurrentAccessAttempted,
199 RTI::RTIinternalError);
206 virtual
void publishObjectClass (
207 RTI::ObjectClassHandle theClass,
210 RTI::ObjectClassNotDefined,
211 RTI::AttributeNotDefined,
212 RTI::OwnershipAcquisitionPending,
213 RTI::FederateNotExecutionMember,
214 RTI::ConcurrentAccessAttempted,
216 RTI::RestoreInProgress,
217 RTI::RTIinternalError);
220 virtual
void unpublishObjectClass (
221 RTI::ObjectClassHandle theClass)
223 RTI::ObjectClassNotDefined,
224 RTI::ObjectClassNotPublished,
225 RTI::OwnershipAcquisitionPending,
226 RTI::FederateNotExecutionMember,
227 RTI::ConcurrentAccessAttempted,
229 RTI::RestoreInProgress,
230 RTI::RTIinternalError);
233 virtual
void publishInteractionClass (
234 RTI::InteractionClassHandle theInteraction)
236 RTI::InteractionClassNotDefined,
237 RTI::FederateNotExecutionMember,
238 RTI::ConcurrentAccessAttempted,
240 RTI::RestoreInProgress,
241 RTI::RTIinternalError);
244 virtual
void unpublishInteractionClass (
245 RTI::InteractionClassHandle theInteraction)
247 RTI::InteractionClassNotDefined,
248 RTI::InteractionClassNotPublished,
249 RTI::FederateNotExecutionMember,
250 RTI::ConcurrentAccessAttempted,
252 RTI::RestoreInProgress,
253 RTI::RTIinternalError);
256 virtual
void subscribeObjectClassAttributes (
257 RTI::ObjectClassHandle theClass,
259 RTI::Boolean active = RTI::RTI_TRUE)
261 RTI::ObjectClassNotDefined,
262 RTI::AttributeNotDefined,
263 RTI::FederateNotExecutionMember,
264 RTI::ConcurrentAccessAttempted,
266 RTI::RestoreInProgress,
267 RTI::RTIinternalError);
270 virtual
void unsubscribeObjectClass (
271 RTI::ObjectClassHandle theClass)
273 RTI::ObjectClassNotDefined,
274 RTI::ObjectClassNotSubscribed,
275 RTI::FederateNotExecutionMember,
276 RTI::ConcurrentAccessAttempted,
278 RTI::RestoreInProgress,
279 RTI::RTIinternalError);
282 virtual
void subscribeInteractionClass (
283 RTI::InteractionClassHandle theClass,
284 RTI::Boolean active = RTI::RTI_TRUE)
286 RTI::InteractionClassNotDefined,
287 RTI::FederateNotExecutionMember,
288 RTI::ConcurrentAccessAttempted,
289 RTI::FederateLoggingServiceCalls,
291 RTI::RestoreInProgress,
292 RTI::RTIinternalError);
295 virtual
void unsubscribeInteractionClass (
296 RTI::InteractionClassHandle theClass)
298 RTI::InteractionClassNotDefined,
299 RTI::InteractionClassNotSubscribed,
300 RTI::FederateNotExecutionMember,
301 RTI::ConcurrentAccessAttempted,
303 RTI::RestoreInProgress,
304 RTI::RTIinternalError);
311 virtual RTI::ObjectHandle registerObjectInstance (
312 RTI::ObjectClassHandle theClass,
313 const
char *theObject)
315 RTI::ObjectClassNotDefined,
316 RTI::ObjectClassNotPublished,
317 RTI::ObjectAlreadyRegistered,
318 RTI::FederateNotExecutionMember,
319 RTI::ConcurrentAccessAttempted,
321 RTI::RestoreInProgress,
322 RTI::RTIinternalError);
324 virtual RTI::ObjectHandle registerObjectInstance (
325 RTI::ObjectClassHandle theClass)
327 RTI::ObjectClassNotDefined,
328 RTI::ObjectClassNotPublished,
329 RTI::FederateNotExecutionMember,
330 RTI::ConcurrentAccessAttempted,
332 RTI::RestoreInProgress,
333 RTI::RTIinternalError);
336 virtual RTI::EventRetractionHandle updateAttributeValues (
337 RTI::ObjectHandle theObject,
338 const RTI::AttributeHandleValuePairSet& theAttributes,
339 const RTI::FedTime& theTime,
343 RTI::AttributeNotDefined,
344 RTI::AttributeNotOwned,
345 RTI::InvalidFederationTime,
346 RTI::FederateNotExecutionMember,
347 RTI::ConcurrentAccessAttempted,
349 RTI::RestoreInProgress,
350 RTI::RTIinternalError);
352 virtual
void updateAttributeValues (
353 RTI::ObjectHandle theObject,
354 const RTI::AttributeHandleValuePairSet& theAttributes,
358 RTI::AttributeNotDefined,
359 RTI::AttributeNotOwned,
360 RTI::FederateNotExecutionMember,
361 RTI::ConcurrentAccessAttempted,
363 RTI::RestoreInProgress,
364 RTI::RTIinternalError);
367 virtual RTI::EventRetractionHandle sendInteraction (
368 RTI::InteractionClassHandle theInteraction,
369 const RTI::ParameterHandleValuePairSet& theParameters,
370 const RTI::FedTime& theTime,
373 RTI::InteractionClassNotDefined,
374 RTI::InteractionClassNotPublished,
375 RTI::InteractionParameterNotDefined,
376 RTI::InvalidFederationTime,
377 RTI::FederateNotExecutionMember,
378 RTI::ConcurrentAccessAttempted,
380 RTI::RestoreInProgress,
381 RTI::RTIinternalError);
383 virtual
void sendInteraction (
384 RTI::InteractionClassHandle theInteraction,
385 const RTI::ParameterHandleValuePairSet& theParameters,
388 RTI::InteractionClassNotDefined,
389 RTI::InteractionClassNotPublished,
390 RTI::InteractionParameterNotDefined,
391 RTI::FederateNotExecutionMember,
392 RTI::ConcurrentAccessAttempted,
394 RTI::RestoreInProgress,
395 RTI::RTIinternalError);
398 virtual RTI::EventRetractionHandle deleteObjectInstance (
399 RTI::ObjectHandle theObject,
400 const RTI::FedTime& theTime,
404 RTI::DeletePrivilegeNotHeld,
405 RTI::InvalidFederationTime,
406 RTI::FederateNotExecutionMember,
407 RTI::ConcurrentAccessAttempted,
409 RTI::RestoreInProgress,
410 RTI::RTIinternalError);
412 virtual
void deleteObjectInstance (
413 RTI::ObjectHandle theObject,
417 RTI::DeletePrivilegeNotHeld,
418 RTI::FederateNotExecutionMember,
419 RTI::ConcurrentAccessAttempted,
421 RTI::RestoreInProgress,
422 RTI::RTIinternalError);
425 virtual
void localDeleteObjectInstance (
426 RTI::ObjectHandle theObject)
429 RTI::FederateOwnsAttributes,
430 RTI::FederateNotExecutionMember,
431 RTI::ConcurrentAccessAttempted,
433 RTI::RestoreInProgress,
434 RTI::RTIinternalError);
437 virtual
void changeAttributeTransportationType (
438 RTI::ObjectHandle theObject,
440 RTI::TransportationHandle theType)
443 RTI::AttributeNotDefined,
444 RTI::AttributeNotOwned,
445 RTI::InvalidTransportationHandle,
446 RTI::FederateNotExecutionMember,
447 RTI::ConcurrentAccessAttempted,
449 RTI::RestoreInProgress,
450 RTI::RTIinternalError);
453 virtual
void changeInteractionTransportationType (
454 RTI::InteractionClassHandle theClass,
455 RTI::TransportationHandle theType)
457 RTI::InteractionClassNotDefined,
458 RTI::InteractionClassNotPublished,
459 RTI::InvalidTransportationHandle,
460 RTI::FederateNotExecutionMember,
461 RTI::ConcurrentAccessAttempted,
463 RTI::RestoreInProgress,
464 RTI::RTIinternalError);
467 virtual
void requestObjectAttributeValueUpdate (
468 RTI::ObjectHandle theObject,
472 RTI::AttributeNotDefined,
473 RTI::FederateNotExecutionMember,
474 RTI::ConcurrentAccessAttempted,
476 RTI::RestoreInProgress,
477 RTI::RTIinternalError);
479 virtual
void requestClassAttributeValueUpdate (
480 RTI::ObjectClassHandle theClass,
483 RTI::ObjectClassNotDefined,
484 RTI::AttributeNotDefined,
485 RTI::FederateNotExecutionMember,
486 RTI::ConcurrentAccessAttempted,
488 RTI::RestoreInProgress,
489 RTI::RTIinternalError);
496 virtual
void unconditionalAttributeOwnershipDivestiture (
497 RTI::ObjectHandle theObject,
501 RTI::AttributeNotDefined,
502 RTI::AttributeNotOwned,
503 RTI::FederateNotExecutionMember,
504 RTI::ConcurrentAccessAttempted,
506 RTI::RestoreInProgress,
507 RTI::RTIinternalError);
510 virtual
void negotiatedAttributeOwnershipDivestiture (
511 RTI::ObjectHandle theObject,
516 RTI::AttributeNotDefined,
517 RTI::AttributeNotOwned,
518 RTI::AttributeAlreadyBeingDivested,
519 RTI::FederateNotExecutionMember,
520 RTI::ConcurrentAccessAttempted,
522 RTI::RestoreInProgress,
523 RTI::RTIinternalError);
526 virtual
void attributeOwnershipAcquisition (
527 RTI::ObjectHandle theObject,
532 RTI::ObjectClassNotPublished,
533 RTI::AttributeNotDefined,
534 RTI::AttributeNotPublished,
535 RTI::FederateOwnsAttributes,
536 RTI::FederateNotExecutionMember,
537 RTI::ConcurrentAccessAttempted,
539 RTI::RestoreInProgress,
540 RTI::RTIinternalError);
543 virtual
void attributeOwnershipAcquisitionIfAvailable (
544 RTI::ObjectHandle theObject,
548 RTI::ObjectClassNotPublished,
549 RTI::AttributeNotDefined,
550 RTI::AttributeNotPublished,
551 RTI::FederateOwnsAttributes,
552 RTI::AttributeAlreadyBeingAcquired,
553 RTI::FederateNotExecutionMember,
554 RTI::ConcurrentAccessAttempted,
556 RTI::RestoreInProgress,
557 RTI::RTIinternalError);
561 RTI::ObjectHandle theObject,
565 RTI::AttributeNotDefined,
566 RTI::AttributeNotOwned,
567 RTI::FederateWasNotAskedToReleaseAttribute,
568 RTI::FederateNotExecutionMember,
569 RTI::ConcurrentAccessAttempted,
571 RTI::RestoreInProgress,
572 RTI::RTIinternalError);
575 virtual
void cancelNegotiatedAttributeOwnershipDivestiture (
576 RTI::ObjectHandle theObject,
580 RTI::AttributeNotDefined,
581 RTI::AttributeNotOwned,
582 RTI::AttributeDivestitureWasNotRequested,
583 RTI::FederateNotExecutionMember,
584 RTI::ConcurrentAccessAttempted,
586 RTI::RestoreInProgress,
587 RTI::RTIinternalError);
590 virtual
void cancelAttributeOwnershipAcquisition (
591 RTI::ObjectHandle theObject,
595 RTI::AttributeNotDefined,
596 RTI::AttributeAlreadyOwned,
597 RTI::AttributeAcquisitionWasNotRequested,
598 RTI::FederateNotExecutionMember,
599 RTI::ConcurrentAccessAttempted,
601 RTI::RestoreInProgress,
602 RTI::RTIinternalError);
605 virtual
void queryAttributeOwnership (
606 RTI::ObjectHandle theObject,
607 RTI::AttributeHandle theAttribute)
610 RTI::AttributeNotDefined,
611 RTI::FederateNotExecutionMember,
612 RTI::ConcurrentAccessAttempted,
614 RTI::RestoreInProgress,
615 RTI::RTIinternalError);
618 virtual RTI::Boolean isAttributeOwnedByFederate (
619 RTI::ObjectHandle theObject,
620 RTI::AttributeHandle theAttribute)
623 RTI::AttributeNotDefined,
624 RTI::FederateNotExecutionMember,
625 RTI::ConcurrentAccessAttempted,
627 RTI::RestoreInProgress,
628 RTI::RTIinternalError);
635 virtual
void enableTimeRegulation (
636 const RTI::FedTime& theFederateTime,
637 const RTI::FedTime& theLookahead)
639 RTI::TimeRegulationAlreadyEnabled,
640 RTI::EnableTimeRegulationPending,
641 RTI::TimeAdvanceAlreadyInProgress,
642 RTI::InvalidFederationTime,
643 RTI::InvalidLookahead,
644 RTI::ConcurrentAccessAttempted,
645 RTI::FederateNotExecutionMember,
647 RTI::RestoreInProgress,
648 RTI::RTIinternalError);
651 virtual
void disableTimeRegulation ()
653 RTI::TimeRegulationWasNotEnabled,
654 RTI::ConcurrentAccessAttempted,
655 RTI::FederateNotExecutionMember,
657 RTI::RestoreInProgress,
658 RTI::RTIinternalError);
661 virtual
void enableTimeConstrained ()
663 RTI::TimeConstrainedAlreadyEnabled,
664 RTI::EnableTimeConstrainedPending,
665 RTI::TimeAdvanceAlreadyInProgress,
666 RTI::FederateNotExecutionMember,
667 RTI::ConcurrentAccessAttempted,
669 RTI::RestoreInProgress,
670 RTI::RTIinternalError);
673 virtual
void disableTimeConstrained ()
675 RTI::TimeConstrainedWasNotEnabled,
676 RTI::FederateNotExecutionMember,
677 RTI::ConcurrentAccessAttempted,
679 RTI::RestoreInProgress,
680 RTI::RTIinternalError);
683 virtual
void timeAdvanceRequest (
684 const RTI::FedTime& theTime)
686 RTI::InvalidFederationTime,
687 RTI::FederationTimeAlreadyPassed,
688 RTI::TimeAdvanceAlreadyInProgress,
689 RTI::EnableTimeRegulationPending,
690 RTI::EnableTimeConstrainedPending,
691 RTI::FederateNotExecutionMember,
692 RTI::ConcurrentAccessAttempted,
694 RTI::RestoreInProgress,
695 RTI::RTIinternalError);
698 virtual
void timeAdvanceRequestAvailable (
699 const RTI::FedTime& theTime)
701 RTI::InvalidFederationTime,
702 RTI::FederationTimeAlreadyPassed,
703 RTI::TimeAdvanceAlreadyInProgress,
704 RTI::EnableTimeRegulationPending,
705 RTI::EnableTimeConstrainedPending,
706 RTI::FederateNotExecutionMember,
707 RTI::ConcurrentAccessAttempted,
709 RTI::RestoreInProgress,
710 RTI::RTIinternalError);
713 virtual
void nextEventRequest (
714 const RTI::FedTime& theTime)
716 RTI::InvalidFederationTime,
717 RTI::FederationTimeAlreadyPassed,
718 RTI::TimeAdvanceAlreadyInProgress,
719 RTI::EnableTimeRegulationPending,
720 RTI::EnableTimeConstrainedPending,
721 RTI::FederateNotExecutionMember,
722 RTI::ConcurrentAccessAttempted,
724 RTI::RestoreInProgress,
725 RTI::RTIinternalError);
728 virtual
void nextEventRequestAvailable (
729 const RTI::FedTime& theTime)
731 RTI::InvalidFederationTime,
732 RTI::FederationTimeAlreadyPassed,
733 RTI::TimeAdvanceAlreadyInProgress,
734 RTI::EnableTimeRegulationPending,
735 RTI::EnableTimeConstrainedPending,
736 RTI::FederateNotExecutionMember,
737 RTI::ConcurrentAccessAttempted,
739 RTI::RestoreInProgress,
740 RTI::RTIinternalError);
743 virtual
void flushQueueRequest (
744 const RTI::FedTime& theTime)
746 RTI::InvalidFederationTime,
747 RTI::FederationTimeAlreadyPassed,
748 RTI::TimeAdvanceAlreadyInProgress,
749 RTI::EnableTimeRegulationPending,
750 RTI::EnableTimeConstrainedPending,
751 RTI::FederateNotExecutionMember,
752 RTI::ConcurrentAccessAttempted,
754 RTI::RestoreInProgress,
755 RTI::RTIinternalError);
758 virtual
void enableAsynchronousDelivery()
760 RTI::AsynchronousDeliveryAlreadyEnabled,
761 RTI::FederateNotExecutionMember,
762 RTI::ConcurrentAccessAttempted,
764 RTI::RestoreInProgress,
765 RTI::RTIinternalError);
768 virtual
void disableAsynchronousDelivery()
770 RTI::AsynchronousDeliveryAlreadyDisabled,
771 RTI::FederateNotExecutionMember,
772 RTI::ConcurrentAccessAttempted,
774 RTI::RestoreInProgress,
775 RTI::RTIinternalError);
778 virtual
void queryLBTS (
779 RTI::FedTime& theTime)
781 RTI::FederateNotExecutionMember,
782 RTI::ConcurrentAccessAttempted,
784 RTI::RestoreInProgress,
785 RTI::RTIinternalError);
788 virtual
void queryFederateTime (
789 RTI::FedTime& theTime)
791 RTI::FederateNotExecutionMember,
792 RTI::ConcurrentAccessAttempted,
794 RTI::RestoreInProgress,
795 RTI::RTIinternalError);
798 virtual
void queryMinNextEventTime (
799 RTI::FedTime& theTime)
801 RTI::FederateNotExecutionMember,
802 RTI::ConcurrentAccessAttempted,
804 RTI::RestoreInProgress,
805 RTI::RTIinternalError);
808 virtual
void modifyLookahead (
809 const RTI::FedTime& theLookahead)
811 RTI::InvalidLookahead,
812 RTI::FederateNotExecutionMember,
813 RTI::ConcurrentAccessAttempted,
815 RTI::RestoreInProgress,
816 RTI::RTIinternalError);
819 virtual
void queryLookahead (
820 RTI::FedTime& theTime)
822 RTI::FederateNotExecutionMember,
823 RTI::ConcurrentAccessAttempted,
825 RTI::RestoreInProgress,
826 RTI::RTIinternalError);
829 virtual
void retract (
830 RTI::EventRetractionHandle theHandle)
832 RTI::InvalidRetractionHandle,
833 RTI::FederateNotExecutionMember,
834 RTI::ConcurrentAccessAttempted,
836 RTI::RestoreInProgress,
837 RTI::RTIinternalError);
840 virtual
void changeAttributeOrderType (
841 RTI::ObjectHandle theObject,
843 RTI::OrderingHandle theType)
846 RTI::AttributeNotDefined,
847 RTI::AttributeNotOwned,
848 RTI::InvalidOrderingHandle,
849 RTI::FederateNotExecutionMember,
850 RTI::ConcurrentAccessAttempted,
852 RTI::RestoreInProgress,
853 RTI::RTIinternalError);
856 virtual
void changeInteractionOrderType (
857 RTI::InteractionClassHandle theClass,
858 RTI::OrderingHandle theType)
860 RTI::InteractionClassNotDefined,
861 RTI::InteractionClassNotPublished,
862 RTI::InvalidOrderingHandle,
863 RTI::FederateNotExecutionMember,
864 RTI::ConcurrentAccessAttempted,
866 RTI::RestoreInProgress,
867 RTI::RTIinternalError);
874 virtual RTI::Region* createRegion (
875 RTI::SpaceHandle theSpace,
876 RTI::ULong numberOfExtents)
878 RTI::SpaceNotDefined,
880 RTI::FederateNotExecutionMember,
881 RTI::ConcurrentAccessAttempted,
883 RTI::RestoreInProgress,
884 RTI::RTIinternalError);
887 virtual
void notifyAboutRegionModification (
888 RTI::Region &theRegion)
892 RTI::FederateNotExecutionMember,
893 RTI::ConcurrentAccessAttempted,
895 RTI::RestoreInProgress,
896 RTI::RTIinternalError);
899 virtual
void deleteRegion (
900 RTI::Region *theRegion)
904 RTI::FederateNotExecutionMember,
905 RTI::ConcurrentAccessAttempted,
907 RTI::RestoreInProgress,
908 RTI::RTIinternalError);
911 virtual RTI::ObjectHandle registerObjectInstanceWithRegion (
912 RTI::ObjectClassHandle theClass,
913 const
char *theObject,
914 RTI::AttributeHandle theAttributes[],
915 RTI::Region *theRegions[],
916 RTI::ULong theNumberOfHandles)
918 RTI::ObjectClassNotDefined,
919 RTI::ObjectClassNotPublished,
920 RTI::AttributeNotDefined,
921 RTI::AttributeNotPublished,
923 RTI::InvalidRegionContext,
924 RTI::ObjectAlreadyRegistered,
925 RTI::FederateNotExecutionMember,
926 RTI::ConcurrentAccessAttempted,
928 RTI::RestoreInProgress,
929 RTI::RTIinternalError);
931 virtual RTI::ObjectHandle registerObjectInstanceWithRegion (
932 RTI::ObjectClassHandle theClass,
933 RTI::AttributeHandle theAttributes[],
934 RTI::Region *theRegions[],
935 RTI::ULong theNumberOfHandles)
937 RTI::ObjectClassNotDefined,
938 RTI::ObjectClassNotPublished,
939 RTI::AttributeNotDefined,
940 RTI::AttributeNotPublished,
942 RTI::InvalidRegionContext,
943 RTI::FederateNotExecutionMember,
944 RTI::ConcurrentAccessAttempted,
946 RTI::RestoreInProgress,
947 RTI::RTIinternalError);
950 virtual
void associateRegionForUpdates (
951 RTI::Region &theRegion,
952 RTI::ObjectHandle theObject,
956 RTI::AttributeNotDefined,
957 RTI::InvalidRegionContext,
959 RTI::FederateNotExecutionMember,
960 RTI::ConcurrentAccessAttempted,
962 RTI::RestoreInProgress,
963 RTI::RTIinternalError);
966 virtual
void unassociateRegionForUpdates (
967 RTI::Region &theRegion,
968 RTI::ObjectHandle theObject)
971 RTI::InvalidRegionContext,
973 RTI::FederateNotExecutionMember,
974 RTI::ConcurrentAccessAttempted,
976 RTI::RestoreInProgress,
977 RTI::RTIinternalError);
980 virtual
void subscribeObjectClassAttributesWithRegion (
981 RTI::ObjectClassHandle theClass,
982 RTI::Region &theRegion,
984 RTI::Boolean active = RTI::RTI_TRUE)
986 RTI::ObjectClassNotDefined,
987 RTI::AttributeNotDefined,
989 RTI::InvalidRegionContext,
990 RTI::FederateNotExecutionMember,
991 RTI::ConcurrentAccessAttempted,
993 RTI::RestoreInProgress,
994 RTI::RTIinternalError);
997 virtual
void unsubscribeObjectClassWithRegion (
998 RTI::ObjectClassHandle theClass,
999 RTI::Region &theRegion)
1001 RTI::ObjectClassNotDefined,
1002 RTI::RegionNotKnown,
1003 RTI::ObjectClassNotSubscribed,
1004 RTI::FederateNotExecutionMember,
1005 RTI::ConcurrentAccessAttempted,
1006 RTI::SaveInProgress,
1007 RTI::RestoreInProgress,
1008 RTI::RTIinternalError);
1011 virtual
void subscribeInteractionClassWithRegion (
1012 RTI::InteractionClassHandle theClass,
1013 RTI::Region &theRegion,
1014 RTI::Boolean active = RTI::RTI_TRUE)
1016 RTI::InteractionClassNotDefined,
1017 RTI::RegionNotKnown,
1018 RTI::InvalidRegionContext,
1019 RTI::FederateLoggingServiceCalls,
1020 RTI::FederateNotExecutionMember,
1021 RTI::ConcurrentAccessAttempted,
1022 RTI::SaveInProgress,
1023 RTI::RestoreInProgress,
1024 RTI::RTIinternalError);
1027 virtual
void unsubscribeInteractionClassWithRegion (
1028 RTI::InteractionClassHandle theClass,
1029 RTI::Region &theRegion)
1031 RTI::InteractionClassNotDefined,
1032 RTI::InteractionClassNotSubscribed,
1033 RTI::RegionNotKnown,
1034 RTI::FederateNotExecutionMember,
1035 RTI::ConcurrentAccessAttempted,
1036 RTI::SaveInProgress,
1037 RTI::RestoreInProgress,
1038 RTI::RTIinternalError);
1041 virtual RTI::EventRetractionHandle sendInteractionWithRegion (
1042 RTI::InteractionClassHandle theInteraction,
1043 const RTI::ParameterHandleValuePairSet &theParameters,
1044 const RTI::FedTime& theTime,
1046 const RTI::Region &theRegion)
1048 RTI::InteractionClassNotDefined,
1049 RTI::InteractionClassNotPublished,
1050 RTI::InteractionParameterNotDefined,
1051 RTI::InvalidFederationTime,
1052 RTI::RegionNotKnown,
1053 RTI::InvalidRegionContext,
1054 RTI::FederateNotExecutionMember,
1055 RTI::ConcurrentAccessAttempted,
1056 RTI::SaveInProgress,
1057 RTI::RestoreInProgress,
1058 RTI::RTIinternalError);
1060 virtual
void sendInteractionWithRegion (
1061 RTI::InteractionClassHandle theInteraction,
1062 const RTI::ParameterHandleValuePairSet &theParameters,
1064 const RTI::Region &theRegion)
1066 RTI::InteractionClassNotDefined,
1067 RTI::InteractionClassNotPublished,
1068 RTI::InteractionParameterNotDefined,
1069 RTI::RegionNotKnown,
1070 RTI::InvalidRegionContext,
1071 RTI::FederateNotExecutionMember,
1072 RTI::ConcurrentAccessAttempted,
1073 RTI::SaveInProgress,
1074 RTI::RestoreInProgress,
1075 RTI::RTIinternalError);
1078 virtual
void requestClassAttributeValueUpdateWithRegion (
1079 RTI::ObjectClassHandle theClass,
1081 const RTI::Region &theRegion)
1083 RTI::ObjectClassNotDefined,
1084 RTI::AttributeNotDefined,
1085 RTI::RegionNotKnown,
1086 RTI::FederateNotExecutionMember,
1087 RTI::ConcurrentAccessAttempted,
1088 RTI::SaveInProgress,
1089 RTI::RestoreInProgress,
1090 RTI::RTIinternalError);
1097 virtual RTI::ObjectClassHandle getObjectClassHandle (
1098 const
char *theName)
1101 RTI::FederateNotExecutionMember,
1102 RTI::ConcurrentAccessAttempted,
1103 RTI::RTIinternalError);
1106 virtual
char * getObjectClassName (
1107 RTI::ObjectClassHandle theHandle)
1109 RTI::ObjectClassNotDefined,
1110 RTI::FederateNotExecutionMember,
1111 RTI::ConcurrentAccessAttempted,
1112 RTI::RTIinternalError);
1115 virtual RTI::AttributeHandle getAttributeHandle (
1116 const
char *theName,
1117 RTI::ObjectClassHandle whichClass)
1119 RTI::ObjectClassNotDefined,
1121 RTI::FederateNotExecutionMember,
1122 RTI::ConcurrentAccessAttempted,
1123 RTI::RTIinternalError);
1126 virtual
char * getAttributeName (
1127 RTI::AttributeHandle theHandle,
1128 RTI::ObjectClassHandle whichClass)
1130 RTI::ObjectClassNotDefined,
1131 RTI::AttributeNotDefined,
1132 RTI::FederateNotExecutionMember,
1133 RTI::ConcurrentAccessAttempted,
1134 RTI::RTIinternalError);
1137 virtual RTI::InteractionClassHandle getInteractionClassHandle (
1138 const
char *theName)
1141 RTI::FederateNotExecutionMember,
1142 RTI::ConcurrentAccessAttempted,
1143 RTI::RTIinternalError);
1146 virtual
char * getInteractionClassName (
1147 RTI::InteractionClassHandle theHandle)
1149 RTI::InteractionClassNotDefined,
1150 RTI::FederateNotExecutionMember,
1151 RTI::ConcurrentAccessAttempted,
1152 RTI::RTIinternalError);
1155 virtual RTI::ParameterHandle getParameterHandle (
1156 const
char *theName,
1157 RTI::InteractionClassHandle whichClass)
1159 RTI::InteractionClassNotDefined,
1161 RTI::FederateNotExecutionMember,
1162 RTI::ConcurrentAccessAttempted,
1163 RTI::RTIinternalError);
1166 virtual
char * getParameterName (
1167 RTI::ParameterHandle theHandle,
1168 RTI::InteractionClassHandle whichClass)
1170 RTI::InteractionClassNotDefined,
1171 RTI::InteractionParameterNotDefined,
1172 RTI::FederateNotExecutionMember,
1173 RTI::ConcurrentAccessAttempted,
1174 RTI::RTIinternalError);
1177 virtual RTI::ObjectHandle getObjectInstanceHandle (
1178 const
char *theName)
1180 RTI::ObjectNotKnown,
1181 RTI::FederateNotExecutionMember,
1182 RTI::ConcurrentAccessAttempted,
1183 RTI::RTIinternalError);
1186 virtual
char * getObjectInstanceName (
1187 RTI::ObjectHandle theHandle)
1189 RTI::ObjectNotKnown,
1190 RTI::FederateNotExecutionMember,
1191 RTI::ConcurrentAccessAttempted,
1192 RTI::RTIinternalError);
1195 virtual RTI::SpaceHandle getRoutingSpaceHandle (
1196 const
char *theName)
1199 RTI::FederateNotExecutionMember,
1200 RTI::ConcurrentAccessAttempted,
1201 RTI::RTIinternalError);
1204 virtual
char * getRoutingSpaceName (
1205 RTI::SpaceHandle theHandle)
1207 RTI::SpaceNotDefined,
1208 RTI::FederateNotExecutionMember,
1209 RTI::ConcurrentAccessAttempted,
1210 RTI::RTIinternalError);
1213 virtual RTI::DimensionHandle getDimensionHandle (
1214 const
char *theName,
1215 RTI::SpaceHandle whichSpace)
1217 RTI::SpaceNotDefined,
1219 RTI::FederateNotExecutionMember,
1220 RTI::ConcurrentAccessAttempted,
1221 RTI::RTIinternalError);
1224 virtual
char * getDimensionName (
1225 RTI::DimensionHandle theHandle,
1226 RTI::SpaceHandle whichSpace)
1228 RTI::SpaceNotDefined,
1229 RTI::DimensionNotDefined,
1230 RTI::FederateNotExecutionMember,
1231 RTI::ConcurrentAccessAttempted,
1232 RTI::RTIinternalError);
1235 virtual RTI::SpaceHandle getAttributeRoutingSpaceHandle (
1236 RTI::AttributeHandle theHandle,
1237 RTI::ObjectClassHandle whichClass)
1239 RTI::ObjectClassNotDefined,
1240 RTI::AttributeNotDefined,
1241 RTI::FederateNotExecutionMember,
1242 RTI::ConcurrentAccessAttempted,
1243 RTI::RTIinternalError);
1246 virtual RTI::ObjectClassHandle getObjectClass (
1247 RTI::ObjectHandle theObject)
1249 RTI::ObjectNotKnown,
1250 RTI::FederateNotExecutionMember,
1251 RTI::ConcurrentAccessAttempted,
1252 RTI::RTIinternalError);
1255 virtual RTI::SpaceHandle getInteractionRoutingSpaceHandle (
1256 RTI::InteractionClassHandle theHandle)
1258 RTI::InteractionClassNotDefined,
1259 RTI::FederateNotExecutionMember,
1260 RTI::ConcurrentAccessAttempted,
1261 RTI::RTIinternalError);
1264 virtual RTI::TransportationHandle getTransportationHandle (
1265 const
char *theName)
1268 RTI::FederateNotExecutionMember,
1269 RTI::ConcurrentAccessAttempted,
1270 RTI::RTIinternalError);
1273 virtual
char * getTransportationName (
1274 RTI::TransportationHandle theHandle)
1276 RTI::InvalidTransportationHandle,
1277 RTI::FederateNotExecutionMember,
1278 RTI::ConcurrentAccessAttempted,
1279 RTI::RTIinternalError);
1282 virtual RTI::OrderingHandle getOrderingHandle (
1283 const
char *theName)
1286 RTI::FederateNotExecutionMember,
1287 RTI::ConcurrentAccessAttempted,
1288 RTI::RTIinternalError);
1291 virtual
char * getOrderingName (
1292 RTI::OrderingHandle theHandle)
1294 RTI::InvalidOrderingHandle,
1295 RTI::FederateNotExecutionMember,
1296 RTI::ConcurrentAccessAttempted,
1297 RTI::RTIinternalError);
1300 virtual
void enableClassRelevanceAdvisorySwitch()
1302 RTI::FederateNotExecutionMember,
1303 RTI::ConcurrentAccessAttempted,
1304 RTI::SaveInProgress,
1305 RTI::RestoreInProgress,
1306 RTI::RTIinternalError);
1309 virtual
void disableClassRelevanceAdvisorySwitch()
1311 RTI::FederateNotExecutionMember,
1312 RTI::ConcurrentAccessAttempted,
1313 RTI::SaveInProgress,
1314 RTI::RestoreInProgress,
1315 RTI::RTIinternalError);
1318 virtual
void enableAttributeRelevanceAdvisorySwitch()
1320 RTI::FederateNotExecutionMember,
1321 RTI::ConcurrentAccessAttempted,
1322 RTI::SaveInProgress,
1323 RTI::RestoreInProgress,
1324 RTI::RTIinternalError);
1327 virtual
void disableAttributeRelevanceAdvisorySwitch()
1329 RTI::FederateNotExecutionMember,
1330 RTI::ConcurrentAccessAttempted,
1331 RTI::SaveInProgress,
1332 RTI::RestoreInProgress,
1333 RTI::RTIinternalError);
1336 virtual
void enableAttributeScopeAdvisorySwitch()
1338 RTI::FederateNotExecutionMember,
1339 RTI::ConcurrentAccessAttempted,
1340 RTI::SaveInProgress,
1341 RTI::RestoreInProgress,
1342 RTI::RTIinternalError);
1345 virtual
void disableAttributeScopeAdvisorySwitch()
1347 RTI::FederateNotExecutionMember,
1348 RTI::ConcurrentAccessAttempted,
1349 RTI::SaveInProgress,
1350 RTI::RestoreInProgress,
1351 RTI::RTIinternalError);
1354 virtual
void enableInteractionRelevanceAdvisorySwitch()
1356 RTI::FederateNotExecutionMember,
1357 RTI::ConcurrentAccessAttempted,
1358 RTI::SaveInProgress,
1359 RTI::RestoreInProgress,
1360 RTI::RTIinternalError);
1363 virtual
void disableInteractionRelevanceAdvisorySwitch()
1365 RTI::FederateNotExecutionMember,
1366 RTI::ConcurrentAccessAttempted,
1367 RTI::SaveInProgress,
1368 RTI::RestoreInProgress,
1369 RTI::RTIinternalError);
1371 virtual RTI::Boolean tick ()
1373 RTI::SpecifiedSaveLabelDoesNotExist,
1374 RTI::ConcurrentAccessAttempted,
1375 RTI::RTIinternalError);
1377 virtual RTI::Boolean tick (
1378 RTI::TickTime minimum,
1379 RTI::TickTime maximum,
1380 RTI::Boolean unlockWhileWaiting=RTI::RTI_FALSE)
1382 RTI::SpecifiedSaveLabelDoesNotExist,
1383 RTI::ConcurrentAccessAttempted,
1384 RTI::RTIinternalError);
1386 virtual RTI::RegionToken getRegionToken(
1389 RTI::FederateNotExecutionMember,
1390 RTI::ConcurrentAccessAttempted,
1391 RTI::RegionNotKnown,
1392 RTI::RTIinternalError);
1394 virtual RTI::Region * getRegion(
1397 RTI::FederateNotExecutionMember,
1398 RTI::ConcurrentAccessAttempted,
1399 RTI::RegionNotKnown,
1400 RTI::RTIinternalError);
1406 static DtRtiAmbassadorImplementor* create(RTI::RTIambassador *topLevelAmbPtr);
1411 DtNetStatsFedAmbWrapper* myStatisticsFedAmb;
1412 const
char* myStatisticsFedAmbName;
1418 MAKRti::DtClock myTimer;
1420 MAKRti::DtTime myStartTime;
1426 #endif // DtIFSPEC1516
1427 #endif // DtLoggingRtiAmbassador_H_