8 #ifndef RTI_RTIambassador_h
9 #define RTI_RTIambassador_h
13 class FederateAmbassador;
15 class LogicalTimeFactory;
16 class LogicalTimeInterval;
39 virtual void createFederationExecution
40 (std::wstring
const & federationExecutionName,
41 std::wstring
const & fullPathNameToTheFDDfile,
42 std::wstring
const & logicalTimeImplementationName = L
"")
43 throw (FederationExecutionAlreadyExists,
46 CouldNotCreateLogicalTimeFactory,
47 RTIinternalError) = 0;
50 virtual void destroyFederationExecution
51 (std::wstring
const & federationExecutionName)
52 throw (FederatesCurrentlyJoined,
53 FederationExecutionDoesNotExist,
54 RTIinternalError) = 0;
57 virtual FederateHandle joinFederationExecution
58 (std::wstring
const & federateType,
59 std::wstring
const & federationExecutionName,
61 throw (FederateAlreadyExecutionMember,
62 FederationExecutionDoesNotExist,
65 CouldNotCreateLogicalTimeFactory,
66 RTIinternalError) = 0;
69 virtual void resignFederationExecution
71 throw (OwnershipAcquisitionPending,
72 FederateOwnsAttributes,
73 FederateNotExecutionMember,
74 RTIinternalError) = 0;
77 virtual void registerFederationSynchronizationPoint
78 (std::wstring
const & label,
80 throw (FederateNotExecutionMember,
83 RTIinternalError) = 0;
85 virtual void registerFederationSynchronizationPoint
86 (std::wstring
const & label,
89 throw (FederateNotExecutionMember,
92 RTIinternalError) = 0;
95 virtual void synchronizationPointAchieved
96 (std::wstring
const & label)
97 throw (SynchronizationPointLabelNotAnnounced,
98 FederateNotExecutionMember,
101 RTIinternalError) = 0;
104 virtual void requestFederationSave
105 (std::wstring
const & label)
106 throw (FederateNotExecutionMember,
109 RTIinternalError) = 0;
111 virtual void requestFederationSave
112 (std::wstring
const & label,
114 throw (LogicalTimeAlreadyPassed,
116 FederateUnableToUseTime,
117 FederateNotExecutionMember,
120 RTIinternalError) = 0;
123 virtual void federateSaveBegun ()
124 throw (SaveNotInitiated,
125 FederateNotExecutionMember,
127 RTIinternalError) = 0;
130 virtual void federateSaveComplete ()
131 throw (FederateHasNotBegunSave,
132 FederateNotExecutionMember,
134 RTIinternalError) = 0;
136 virtual void federateSaveNotComplete()
137 throw (FederateHasNotBegunSave,
138 FederateNotExecutionMember,
140 RTIinternalError) = 0;
143 virtual void queryFederationSaveStatus ()
144 throw (FederateNotExecutionMember,
146 RTIinternalError) = 0;
149 virtual void requestFederationRestore
150 (std::wstring
const & label)
151 throw (FederateNotExecutionMember,
154 RTIinternalError) = 0;
157 virtual void federateRestoreComplete ()
158 throw (RestoreNotRequested,
159 FederateNotExecutionMember,
161 RTIinternalError) = 0;
163 virtual void federateRestoreNotComplete ()
164 throw (RestoreNotRequested,
165 FederateNotExecutionMember,
167 RTIinternalError) = 0;
170 virtual void queryFederationRestoreStatus ()
171 throw (FederateNotExecutionMember,
173 RTIinternalError) = 0;
180 virtual void publishObjectClassAttributes
181 (ObjectClassHandle theClass,
183 throw (ObjectClassNotDefined,
185 FederateNotExecutionMember,
188 RTIinternalError) = 0;
191 virtual void unpublishObjectClass
192 (ObjectClassHandle theClass)
193 throw (ObjectClassNotDefined,
194 OwnershipAcquisitionPending,
195 FederateNotExecutionMember,
198 RTIinternalError) = 0;
200 virtual void unpublishObjectClassAttributes
201 (ObjectClassHandle theClass,
203 throw (ObjectClassNotDefined,
205 OwnershipAcquisitionPending,
206 FederateNotExecutionMember,
209 RTIinternalError) = 0;
212 virtual void publishInteractionClass
213 (InteractionClassHandle theInteraction)
214 throw (InteractionClassNotDefined,
215 FederateNotExecutionMember,
218 RTIinternalError) = 0;
221 virtual void unpublishInteractionClass
222 (InteractionClassHandle theInteraction)
223 throw (InteractionClassNotDefined,
224 FederateNotExecutionMember,
227 RTIinternalError) = 0;
230 virtual void subscribeObjectClassAttributes
231 (ObjectClassHandle theClass,
234 throw (ObjectClassNotDefined,
236 FederateNotExecutionMember,
239 RTIinternalError) = 0;
242 virtual void unsubscribeObjectClass
243 (ObjectClassHandle theClass)
244 throw (ObjectClassNotDefined,
245 FederateNotExecutionMember,
248 RTIinternalError) = 0;
250 virtual void unsubscribeObjectClassAttributes
251 (ObjectClassHandle theClass,
253 throw (ObjectClassNotDefined,
255 FederateNotExecutionMember,
258 RTIinternalError) = 0;
261 virtual void subscribeInteractionClass
262 (InteractionClassHandle theClass,
264 throw (InteractionClassNotDefined,
265 FederateServiceInvocationsAreBeingReportedViaMOM,
266 FederateNotExecutionMember,
269 RTIinternalError) = 0;
272 virtual void unsubscribeInteractionClass
273 (InteractionClassHandle theClass)
274 throw (InteractionClassNotDefined,
275 FederateNotExecutionMember,
278 RTIinternalError) = 0;
285 virtual void reserveObjectInstanceName
286 (std::wstring
const & theObjectInstanceName)
288 FederateNotExecutionMember,
291 RTIinternalError) = 0;
294 virtual ObjectInstanceHandle registerObjectInstance
295 (ObjectClassHandle theClass)
296 throw (ObjectClassNotDefined,
297 ObjectClassNotPublished,
298 FederateNotExecutionMember,
301 RTIinternalError) = 0;
303 virtual ObjectInstanceHandle registerObjectInstance
304 (ObjectClassHandle theClass,
305 std::wstring
const & theObjectInstanceName)
306 throw (ObjectClassNotDefined,
307 ObjectClassNotPublished,
308 ObjectInstanceNameNotReserved,
309 ObjectInstanceNameInUse,
310 FederateNotExecutionMember,
313 RTIinternalError) = 0;
316 virtual void updateAttributeValues
317 (ObjectInstanceHandle theObject,
320 throw (ObjectInstanceNotKnown,
323 FederateNotExecutionMember,
326 RTIinternalError) = 0;
328 virtual MessageRetractionHandle updateAttributeValues
329 (ObjectInstanceHandle theObject,
333 throw (ObjectInstanceNotKnown,
337 FederateNotExecutionMember,
340 RTIinternalError) = 0;
343 virtual void sendInteraction
344 (InteractionClassHandle theInteraction,
347 throw (InteractionClassNotPublished,
348 InteractionClassNotDefined,
349 InteractionParameterNotDefined,
350 FederateNotExecutionMember,
353 RTIinternalError) = 0;
355 virtual MessageRetractionHandle sendInteraction
356 (InteractionClassHandle theInteraction,
360 throw (InteractionClassNotPublished,
361 InteractionClassNotDefined,
362 InteractionParameterNotDefined,
364 FederateNotExecutionMember,
367 RTIinternalError) = 0;
370 virtual void deleteObjectInstance
371 (ObjectInstanceHandle theObject,
373 throw (DeletePrivilegeNotHeld,
374 ObjectInstanceNotKnown,
375 FederateNotExecutionMember,
378 RTIinternalError) = 0;
380 virtual MessageRetractionHandle deleteObjectInstance
381 (ObjectInstanceHandle theObject,
384 throw (DeletePrivilegeNotHeld,
385 ObjectInstanceNotKnown,
387 FederateNotExecutionMember,
390 RTIinternalError) = 0;
393 virtual void localDeleteObjectInstance
394 (ObjectInstanceHandle theObject)
395 throw (ObjectInstanceNotKnown,
396 FederateOwnsAttributes,
397 OwnershipAcquisitionPending,
398 FederateNotExecutionMember,
401 RTIinternalError) = 0;
404 virtual void changeAttributeTransportationType
405 (ObjectInstanceHandle theObject,
408 throw (ObjectInstanceNotKnown,
411 FederateNotExecutionMember,
414 RTIinternalError) = 0;
417 virtual void changeInteractionTransportationType
418 (InteractionClassHandle theClass,
420 throw (InteractionClassNotDefined,
421 InteractionClassNotPublished,
422 FederateNotExecutionMember,
425 RTIinternalError) = 0;
428 virtual void requestAttributeValueUpdate
429 (ObjectInstanceHandle theObject,
432 throw (ObjectInstanceNotKnown,
434 FederateNotExecutionMember,
437 RTIinternalError) = 0;
439 virtual void requestAttributeValueUpdate
440 (ObjectClassHandle theClass,
443 throw (ObjectClassNotDefined,
445 FederateNotExecutionMember,
448 RTIinternalError) = 0;
454 virtual void unconditionalAttributeOwnershipDivestiture
455 (ObjectInstanceHandle theObject,
457 throw (ObjectInstanceNotKnown,
460 FederateNotExecutionMember,
463 RTIinternalError) = 0;
466 virtual void negotiatedAttributeOwnershipDivestiture
467 (ObjectInstanceHandle theObject,
470 throw (ObjectInstanceNotKnown,
473 AttributeAlreadyBeingDivested,
474 FederateNotExecutionMember,
477 RTIinternalError) = 0;
480 virtual void confirmDivestiture
481 (ObjectInstanceHandle theObject,
484 throw (ObjectInstanceNotKnown,
487 AttributeDivestitureWasNotRequested,
488 NoAcquisitionPending,
489 FederateNotExecutionMember,
492 RTIinternalError) = 0;
495 virtual void attributeOwnershipAcquisition
496 (ObjectInstanceHandle theObject,
499 throw (ObjectInstanceNotKnown,
500 ObjectClassNotPublished,
502 AttributeNotPublished,
503 FederateOwnsAttributes,
504 FederateNotExecutionMember,
507 RTIinternalError) = 0;
510 virtual void attributeOwnershipAcquisitionIfAvailable
511 (ObjectInstanceHandle theObject,
513 throw (ObjectInstanceNotKnown,
514 ObjectClassNotPublished,
516 AttributeNotPublished,
517 FederateOwnsAttributes,
518 AttributeAlreadyBeingAcquired,
519 FederateNotExecutionMember,
522 RTIinternalError) = 0;
525 virtual void attributeOwnershipDivestitureIfWanted
526 (ObjectInstanceHandle theObject,
529 throw (ObjectInstanceNotKnown,
532 FederateNotExecutionMember,
535 RTIinternalError) = 0;
538 virtual void cancelNegotiatedAttributeOwnershipDivestiture
539 (ObjectInstanceHandle theObject,
541 throw (ObjectInstanceNotKnown,
544 AttributeDivestitureWasNotRequested,
545 FederateNotExecutionMember,
548 RTIinternalError) = 0;
551 virtual void cancelAttributeOwnershipAcquisition
552 (ObjectInstanceHandle theObject,
554 throw (ObjectInstanceNotKnown,
556 AttributeAlreadyOwned,
557 AttributeAcquisitionWasNotRequested,
558 FederateNotExecutionMember,
561 RTIinternalError) = 0;
564 virtual void queryAttributeOwnership
565 (ObjectInstanceHandle theObject,
566 AttributeHandle theAttribute)
567 throw (ObjectInstanceNotKnown,
569 FederateNotExecutionMember,
572 RTIinternalError) = 0;
575 virtual bool isAttributeOwnedByFederate
576 (ObjectInstanceHandle theObject,
577 AttributeHandle theAttribute)
578 throw (ObjectInstanceNotKnown,
580 FederateNotExecutionMember,
583 RTIinternalError) = 0;
590 virtual void enableTimeRegulation
592 throw (TimeRegulationAlreadyEnabled,
594 InTimeAdvancingState,
595 RequestForTimeRegulationPending,
596 FederateNotExecutionMember,
599 RTIinternalError) = 0;
602 virtual void disableTimeRegulation ()
603 throw (TimeRegulationIsNotEnabled,
604 FederateNotExecutionMember,
607 RTIinternalError) = 0;
610 virtual void enableTimeConstrained ()
611 throw (TimeConstrainedAlreadyEnabled,
612 InTimeAdvancingState,
613 RequestForTimeConstrainedPending,
614 FederateNotExecutionMember,
617 RTIinternalError) = 0;
620 virtual void disableTimeConstrained ()
621 throw (TimeConstrainedIsNotEnabled,
622 FederateNotExecutionMember,
625 RTIinternalError) = 0;
628 virtual void timeAdvanceRequest
630 throw (InvalidLogicalTime,
631 LogicalTimeAlreadyPassed,
632 InTimeAdvancingState,
633 RequestForTimeRegulationPending,
634 RequestForTimeConstrainedPending,
635 FederateNotExecutionMember,
638 RTIinternalError) = 0;
641 virtual void timeAdvanceRequestAvailable
643 throw (InvalidLogicalTime,
644 LogicalTimeAlreadyPassed,
645 InTimeAdvancingState,
646 RequestForTimeRegulationPending,
647 RequestForTimeConstrainedPending,
648 FederateNotExecutionMember,
651 RTIinternalError) = 0;
654 virtual void nextMessageRequest
656 throw (InvalidLogicalTime,
657 LogicalTimeAlreadyPassed,
658 InTimeAdvancingState,
659 RequestForTimeRegulationPending,
660 RequestForTimeConstrainedPending,
661 FederateNotExecutionMember,
664 RTIinternalError) = 0;
667 virtual void nextMessageRequestAvailable
669 throw (InvalidLogicalTime,
670 LogicalTimeAlreadyPassed,
671 InTimeAdvancingState,
672 RequestForTimeRegulationPending,
673 RequestForTimeConstrainedPending,
674 FederateNotExecutionMember,
677 RTIinternalError) = 0;
680 virtual void flushQueueRequest
682 throw (InvalidLogicalTime,
683 LogicalTimeAlreadyPassed,
684 InTimeAdvancingState,
685 RequestForTimeRegulationPending,
686 RequestForTimeConstrainedPending,
687 FederateNotExecutionMember,
690 RTIinternalError) = 0;
693 virtual void enableAsynchronousDelivery ()
694 throw (AsynchronousDeliveryAlreadyEnabled,
695 FederateNotExecutionMember,
698 RTIinternalError) = 0;
701 virtual void disableAsynchronousDelivery ()
702 throw (AsynchronousDeliveryAlreadyDisabled,
703 FederateNotExecutionMember,
706 RTIinternalError) = 0;
710 throw (FederateNotExecutionMember,
713 RTIinternalError) = 0;
716 virtual void queryLogicalTime (
LogicalTime & theTime)
717 throw (FederateNotExecutionMember,
720 RTIinternalError) = 0;
724 throw (FederateNotExecutionMember,
727 RTIinternalError) = 0;
730 virtual void modifyLookahead
732 throw (TimeRegulationIsNotEnabled,
734 InTimeAdvancingState,
735 FederateNotExecutionMember,
738 RTIinternalError) = 0;
742 throw (TimeRegulationIsNotEnabled,
743 FederateNotExecutionMember,
746 RTIinternalError) = 0;
750 (MessageRetractionHandle theHandle)
751 throw (InvalidRetractionHandle,
752 TimeRegulationIsNotEnabled,
753 MessageCanNoLongerBeRetracted,
754 FederateNotExecutionMember,
757 RTIinternalError) = 0;
760 virtual void changeAttributeOrderType
761 (ObjectInstanceHandle theObject,
764 throw (ObjectInstanceNotKnown,
767 FederateNotExecutionMember,
770 RTIinternalError) = 0;
773 virtual void changeInteractionOrderType
774 (InteractionClassHandle theClass,
776 throw (InteractionClassNotDefined,
777 InteractionClassNotPublished,
778 FederateNotExecutionMember,
781 RTIinternalError) = 0;
788 virtual RegionHandle createRegion
790 throw (InvalidDimensionHandle,
791 FederateNotExecutionMember,
794 RTIinternalError) = 0;
797 virtual void commitRegionModifications
799 throw (InvalidRegion,
800 RegionNotCreatedByThisFederate,
801 FederateNotExecutionMember,
804 RTIinternalError) = 0;
807 virtual void deleteRegion
808 (RegionHandle theRegion)
809 throw (InvalidRegion,
810 RegionNotCreatedByThisFederate,
811 RegionInUseForUpdateOrSubscription,
812 FederateNotExecutionMember,
815 RTIinternalError) = 0;
818 virtual ObjectInstanceHandle registerObjectInstanceWithRegions
819 (ObjectClassHandle theClass,
821 theAttributeHandleSetRegionHandleSetPairVector)
822 throw (ObjectClassNotDefined,
823 ObjectClassNotPublished,
825 AttributeNotPublished,
827 RegionNotCreatedByThisFederate,
828 InvalidRegionContext,
829 FederateNotExecutionMember,
832 RTIinternalError) = 0;
834 virtual ObjectInstanceHandle registerObjectInstanceWithRegions
835 (ObjectClassHandle theClass,
837 theAttributeHandleSetRegionHandleSetPairVector,
838 std::wstring
const & theObjectInstanceName)
839 throw (ObjectClassNotDefined,
840 ObjectClassNotPublished,
842 AttributeNotPublished,
844 RegionNotCreatedByThisFederate,
845 InvalidRegionContext,
846 ObjectInstanceNameNotReserved,
847 ObjectInstanceNameInUse,
848 FederateNotExecutionMember,
851 RTIinternalError) = 0;
854 virtual void associateRegionsForUpdates
855 (ObjectInstanceHandle theObject,
857 theAttributeHandleSetRegionHandleSetPairVector)
858 throw (ObjectInstanceNotKnown,
861 RegionNotCreatedByThisFederate,
862 InvalidRegionContext,
863 FederateNotExecutionMember,
866 RTIinternalError) = 0;
869 virtual void unassociateRegionsForUpdates
870 (ObjectInstanceHandle theObject,
872 theAttributeHandleSetRegionHandleSetPairVector)
873 throw (ObjectInstanceNotKnown,
876 RegionNotCreatedByThisFederate,
877 FederateNotExecutionMember,
880 RTIinternalError) = 0;
883 virtual void subscribeObjectClassAttributesWithRegions
884 (ObjectClassHandle theClass,
886 theAttributeHandleSetRegionHandleSetPairVector,
888 throw (ObjectClassNotDefined,
891 RegionNotCreatedByThisFederate,
892 InvalidRegionContext,
893 FederateNotExecutionMember,
896 RTIinternalError) = 0;
899 virtual void unsubscribeObjectClassAttributesWithRegions
900 (ObjectClassHandle theClass,
902 theAttributeHandleSetRegionHandleSetPairVector)
903 throw (ObjectClassNotDefined,
906 RegionNotCreatedByThisFederate,
907 FederateNotExecutionMember,
910 RTIinternalError) = 0;
913 virtual void subscribeInteractionClassWithRegions
914 (InteractionClassHandle theClass,
917 throw (InteractionClassNotDefined,
919 RegionNotCreatedByThisFederate,
920 InvalidRegionContext,
921 FederateServiceInvocationsAreBeingReportedViaMOM,
922 FederateNotExecutionMember,
925 RTIinternalError) = 0;
928 virtual void unsubscribeInteractionClassWithRegions
929 (InteractionClassHandle theClass,
931 throw (InteractionClassNotDefined,
933 RegionNotCreatedByThisFederate,
934 FederateNotExecutionMember,
937 RTIinternalError) = 0;
940 virtual void sendInteractionWithRegions
941 (InteractionClassHandle theInteraction,
945 throw (InteractionClassNotDefined,
946 InteractionClassNotPublished,
947 InteractionParameterNotDefined,
949 RegionNotCreatedByThisFederate,
950 InvalidRegionContext,
951 FederateNotExecutionMember,
954 RTIinternalError) = 0;
956 virtual MessageRetractionHandle sendInteractionWithRegions
957 (InteractionClassHandle theInteraction,
962 throw (InteractionClassNotDefined,
963 InteractionClassNotPublished,
964 InteractionParameterNotDefined,
966 RegionNotCreatedByThisFederate,
967 InvalidRegionContext,
969 FederateNotExecutionMember,
972 RTIinternalError) = 0;
975 virtual void requestAttributeValueUpdateWithRegions
976 (ObjectClassHandle theClass,
979 throw (ObjectClassNotDefined,
982 RegionNotCreatedByThisFederate,
983 InvalidRegionContext,
984 FederateNotExecutionMember,
987 RTIinternalError) = 0;
994 virtual ObjectClassHandle getObjectClassHandle
995 (std::wstring
const & theName)
997 FederateNotExecutionMember,
998 RTIinternalError) = 0;
1001 virtual std::wstring getObjectClassName
1002 (ObjectClassHandle theHandle)
1003 throw (InvalidObjectClassHandle,
1004 FederateNotExecutionMember,
1005 RTIinternalError) = 0;
1008 virtual AttributeHandle getAttributeHandle
1009 (ObjectClassHandle whichClass,
1010 std::wstring
const & theAttributeName)
1011 throw (InvalidObjectClassHandle,
1013 FederateNotExecutionMember,
1014 RTIinternalError) = 0;
1017 virtual std::wstring getAttributeName
1018 (ObjectClassHandle whichClass,
1019 AttributeHandle theHandle)
1020 throw (InvalidObjectClassHandle,
1021 InvalidAttributeHandle,
1022 AttributeNotDefined,
1023 FederateNotExecutionMember,
1024 RTIinternalError) = 0;
1027 virtual InteractionClassHandle getInteractionClassHandle
1028 (std::wstring
const & theName)
1029 throw (NameNotFound,
1030 FederateNotExecutionMember,
1031 RTIinternalError) = 0;
1034 virtual std::wstring getInteractionClassName
1035 (InteractionClassHandle theHandle)
1036 throw (InvalidInteractionClassHandle,
1037 FederateNotExecutionMember,
1038 RTIinternalError) = 0;
1041 virtual ParameterHandle getParameterHandle
1042 (InteractionClassHandle whichClass,
1043 std::wstring
const & theName)
1044 throw (InvalidInteractionClassHandle,
1046 FederateNotExecutionMember,
1047 RTIinternalError) = 0;
1050 virtual std::wstring getParameterName
1051 (InteractionClassHandle whichClass,
1052 ParameterHandle theHandle)
1053 throw (InvalidInteractionClassHandle,
1054 InvalidParameterHandle,
1055 InteractionParameterNotDefined,
1056 FederateNotExecutionMember,
1057 RTIinternalError) = 0;
1060 virtual ObjectInstanceHandle getObjectInstanceHandle
1061 (std::wstring
const & theName)
1062 throw (ObjectInstanceNotKnown,
1063 FederateNotExecutionMember,
1064 RTIinternalError) = 0;
1067 virtual std::wstring getObjectInstanceName
1068 (ObjectInstanceHandle theHandle)
1069 throw (ObjectInstanceNotKnown,
1070 FederateNotExecutionMember,
1071 RTIinternalError) = 0;
1074 virtual DimensionHandle getDimensionHandle
1075 (std::wstring
const & theName)
1076 throw (NameNotFound,
1077 FederateNotExecutionMember,
1078 RTIinternalError) = 0;
1081 virtual std::wstring getDimensionName
1082 (DimensionHandle theHandle)
1083 throw (InvalidDimensionHandle,
1084 FederateNotExecutionMember,
1085 RTIinternalError) = 0;
1088 virtual unsigned long getDimensionUpperBound
1089 (DimensionHandle theHandle)
1090 throw (InvalidDimensionHandle,
1091 FederateNotExecutionMember,
1092 RTIinternalError) = 0;
1096 (ObjectClassHandle theClass,
1097 AttributeHandle theHandle)
1098 throw (InvalidObjectClassHandle,
1099 InvalidAttributeHandle,
1100 AttributeNotDefined,
1101 FederateNotExecutionMember,
1102 RTIinternalError) = 0;
1105 virtual ObjectClassHandle getKnownObjectClassHandle
1106 (ObjectInstanceHandle theObject)
1107 throw (ObjectInstanceNotKnown,
1108 FederateNotExecutionMember,
1109 RTIinternalError) = 0;
1113 (InteractionClassHandle theClass)
1114 throw (InvalidInteractionClassHandle,
1115 FederateNotExecutionMember,
1116 RTIinternalError) = 0;
1120 (std::wstring
const & transportationName)
1121 throw (InvalidTransportationName,
1122 FederateNotExecutionMember,
1123 RTIinternalError) = 0;
1126 virtual std::wstring getTransportationName
1128 throw (InvalidTransportationType,
1129 FederateNotExecutionMember,
1130 RTIinternalError) = 0;
1134 (std::wstring
const & orderName)
1135 throw (InvalidOrderName,
1136 FederateNotExecutionMember,
1137 RTIinternalError) = 0;
1140 virtual std::wstring getOrderName
1142 throw (InvalidOrderType,
1143 FederateNotExecutionMember,
1144 RTIinternalError) = 0;
1147 virtual void enableObjectClassRelevanceAdvisorySwitch ()
1148 throw (ObjectClassRelevanceAdvisorySwitchIsOn,
1149 FederateNotExecutionMember,
1152 RTIinternalError) = 0;
1155 virtual void disableObjectClassRelevanceAdvisorySwitch ()
1156 throw (ObjectClassRelevanceAdvisorySwitchIsOff,
1157 FederateNotExecutionMember,
1160 RTIinternalError) = 0;
1163 virtual void enableAttributeRelevanceAdvisorySwitch ()
1164 throw (AttributeRelevanceAdvisorySwitchIsOn,
1165 FederateNotExecutionMember,
1168 RTIinternalError) = 0;
1171 virtual void disableAttributeRelevanceAdvisorySwitch ()
1172 throw (AttributeRelevanceAdvisorySwitchIsOff,
1173 FederateNotExecutionMember,
1176 RTIinternalError) = 0;
1179 virtual void enableAttributeScopeAdvisorySwitch ()
1180 throw (AttributeScopeAdvisorySwitchIsOn,
1181 FederateNotExecutionMember,
1184 RTIinternalError) = 0;
1187 virtual void disableAttributeScopeAdvisorySwitch ()
1188 throw (AttributeScopeAdvisorySwitchIsOff,
1189 FederateNotExecutionMember,
1192 RTIinternalError) = 0;
1195 virtual void enableInteractionRelevanceAdvisorySwitch ()
1196 throw (InteractionRelevanceAdvisorySwitchIsOn,
1197 FederateNotExecutionMember,
1200 RTIinternalError) = 0;
1203 virtual void disableInteractionRelevanceAdvisorySwitch ()
1204 throw (InteractionRelevanceAdvisorySwitchIsOff,
1205 FederateNotExecutionMember,
1208 RTIinternalError) = 0;
1213 (RegionHandle theRegionHandle)
1214 throw (InvalidRegion,
1215 FederateNotExecutionMember,
1218 RTIinternalError) = 0;
1223 (RegionHandle theRegionHandle,
1224 DimensionHandle theDimensionHandle)
1225 throw (InvalidRegion,
1226 RegionDoesNotContainSpecifiedDimension,
1227 FederateNotExecutionMember,
1230 RTIinternalError) = 0;
1233 virtual void setRangeBounds
1234 (RegionHandle theRegionHandle,
1235 DimensionHandle theDimensionHandle,
1237 throw (InvalidRegion,
1238 RegionNotCreatedByThisFederate,
1239 RegionDoesNotContainSpecifiedDimension,
1241 FederateNotExecutionMember,
1244 RTIinternalError) = 0;
1247 virtual unsigned long normalizeFederateHandle
1248 (FederateHandle theFederateHandle)
1249 throw (FederateNotExecutionMember,
1250 InvalidFederateHandle,
1251 RTIinternalError) = 0;
1254 virtual unsigned long normalizeServiceGroup
1256 throw (FederateNotExecutionMember,
1257 InvalidServiceGroup,
1258 RTIinternalError) = 0;
1261 virtual bool evokeCallback(
double approximateMinimumTimeInSeconds)
1262 throw (FederateNotExecutionMember,
1263 RTIinternalError) = 0;
1266 virtual bool evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
1267 double approximateMaximumTimeInSeconds)
1268 throw (FederateNotExecutionMember,
1269 RTIinternalError) = 0;
1272 virtual void enableCallbacks ()
1273 throw (FederateNotExecutionMember,
1276 RTIinternalError) = 0;
1279 virtual void disableCallbacks ()
1280 throw (FederateNotExecutionMember,
1283 RTIinternalError) = 0;
1285 virtual FederateHandle decodeFederateHandle(
1288 virtual ObjectClassHandle decodeObjectClassHandle(
1291 virtual InteractionClassHandle decodeInteractionClassHandle(
1294 virtual ObjectInstanceHandle decodeObjectInstanceHandle(
1297 virtual AttributeHandle decodeAttributeHandle(
1300 virtual ParameterHandle decodeParameterHandle(
1303 virtual DimensionHandle decodeDimensionHandle(
1306 virtual MessageRetractionHandle decodeMessageRetractionHandle(
1309 virtual RegionHandle decodeRegionHandle(
1315 #endif // RTI_RTIambassador_h