33 typedef DtRtiAmbassadorImplementor* (*DtRtiAmbassadorImplementorCreator)
35 const std::vector< std::wstring >& initArgs);
41 const std::vector< std::wstring >& initArgs);
46 virtual ~DtRtiAmbassadorImplementor();
51 DtRtiAmbassadorImplementor(DtRtiAmbassadorImplementor
const& );
54 DtRtiAmbassadorImplementor&
operator= (DtRtiAmbassadorImplementor
const& );
63 virtual void createFederationExecution
64 (std::wstring
const & federationExecutionName,
65 std::wstring
const & fullPathNameToTheFDDfile,
66 std::wstring
const & logicalTimeImplementationName = L
"")
67 throw (rti1516::FederationExecutionAlreadyExists,
68 rti1516::CouldNotOpenFDD,
69 rti1516::ErrorReadingFDD,
70 rti1516::RTIinternalError);
73 virtual
void destroyFederationExecution
74 (std::wstring const & federationExecutionName)
75 throw (rti1516::FederatesCurrentlyJoined,
76 rti1516::FederationExecutionDoesNotExist,
77 rti1516::RTIinternalError);
80 virtual rti1516::FederateHandle joinFederationExecution
81 (std::wstring const & federateType,
82 std::wstring const & federationExecutionName,
83 rti1516::FederateAmbassador & federateAmbassador,
85 throw (rti1516::FederateAlreadyExecutionMember,
86 rti1516::FederationExecutionDoesNotExist,
87 rti1516::SaveInProgress,
88 rti1516::RestoreInProgress,
89 rti1516::RTIinternalError);
92 virtual
void resignFederationExecution
94 throw (rti1516::OwnershipAcquisitionPending,
95 rti1516::FederateOwnsAttributes,
96 rti1516::FederateNotExecutionMember,
97 rti1516::RTIinternalError);
101 virtual
void registerFederationSynchronizationPoint
102 (std::wstring const & label,
103 rti1516::VariableLengthData const & theUserSuppliedTag)
104 throw (rti1516::FederateNotExecutionMember,
105 rti1516::SaveInProgress,
106 rti1516::RestoreInProgress,
107 rti1516::RTIinternalError);
109 virtual
void registerFederationSynchronizationPoint
110 (std::wstring const & label,
111 rti1516::VariableLengthData const & theUserSuppliedTag,
113 throw (rti1516::FederateNotExecutionMember,
114 rti1516::SaveInProgress,
115 rti1516::RestoreInProgress,
116 rti1516::RTIinternalError);
120 virtual
void synchronizationPointAchieved
121 (std::wstring const & label)
122 throw (rti1516::SynchronizationPointLabelNotAnnounced,
123 rti1516::FederateNotExecutionMember,
124 rti1516::SaveInProgress,
125 rti1516::RestoreInProgress,
126 rti1516::RTIinternalError);
130 virtual
void requestFederationSave
131 (std::wstring const & label)
132 throw (rti1516::FederateNotExecutionMember,
133 rti1516::SaveInProgress,
134 rti1516::RestoreInProgress,
135 rti1516::RTIinternalError);
137 virtual
void requestFederationSave
138 (std::wstring const & label,
139 rti1516::LogicalTime const & theTime)
140 throw (rti1516::LogicalTimeAlreadyPassed,
141 rti1516::InvalidLogicalTime,
142 rti1516::FederateUnableToUseTime,
143 rti1516::FederateNotExecutionMember,
144 rti1516::SaveInProgress,
145 rti1516::RestoreInProgress,
146 rti1516::RTIinternalError);
150 virtual
void federateSaveBegun ()
151 throw (rti1516::SaveNotInitiated,
152 rti1516::FederateNotExecutionMember,
153 rti1516::RestoreInProgress,
154 rti1516::RTIinternalError);
158 virtual
void federateSaveComplete ()
159 throw (rti1516::FederateHasNotBegunSave,
160 rti1516::FederateNotExecutionMember,
161 rti1516::RestoreInProgress,
162 rti1516::RTIinternalError);
164 virtual
void federateSaveNotComplete()
165 throw (rti1516::FederateHasNotBegunSave,
166 rti1516::FederateNotExecutionMember,
167 rti1516::RestoreInProgress,
168 rti1516::RTIinternalError);
172 virtual
void queryFederationSaveStatus ()
173 throw (rti1516::FederateNotExecutionMember,
174 rti1516::RestoreInProgress,
175 rti1516::RTIinternalError);
178 virtual
void requestFederationRestore
179 (std::wstring const & label)
180 throw (rti1516::FederateNotExecutionMember,
181 rti1516::SaveInProgress,
182 rti1516::RestoreInProgress,
183 rti1516::RTIinternalError);
187 virtual
void federateRestoreComplete ()
188 throw (rti1516::RestoreNotRequested,
189 rti1516::FederateNotExecutionMember,
190 rti1516::SaveInProgress,
191 rti1516::RTIinternalError);
193 virtual
void federateRestoreNotComplete ()
194 throw (rti1516::RestoreNotRequested,
195 rti1516::FederateNotExecutionMember,
196 rti1516::SaveInProgress,
197 rti1516::RTIinternalError);
201 virtual
void queryFederationRestoreStatus ()
202 throw (rti1516::FederateNotExecutionMember,
203 rti1516::SaveInProgress,
204 rti1516::RTIinternalError);
211 virtual
void publishObjectClassAttributes
212 (rti1516::ObjectClassHandle theClass,
214 throw (rti1516::ObjectClassNotDefined,
215 rti1516::AttributeNotDefined,
216 rti1516::FederateNotExecutionMember,
217 rti1516::SaveInProgress,
218 rti1516::RestoreInProgress,
219 rti1516::RTIinternalError);
223 virtual
void unpublishObjectClass
224 (rti1516::ObjectClassHandle theClass)
225 throw (rti1516::ObjectClassNotDefined,
226 rti1516::OwnershipAcquisitionPending,
227 rti1516::FederateNotExecutionMember,
228 rti1516::SaveInProgress,
229 rti1516::RestoreInProgress,
230 rti1516::RTIinternalError);
232 virtual
void unpublishObjectClassAttributes
233 (rti1516::ObjectClassHandle theClass,
235 throw (rti1516::ObjectClassNotDefined,
236 rti1516::AttributeNotDefined,
237 rti1516::OwnershipAcquisitionPending,
238 rti1516::FederateNotExecutionMember,
239 rti1516::SaveInProgress,
240 rti1516::RestoreInProgress,
241 rti1516::RTIinternalError);
245 virtual
void publishInteractionClass
246 (rti1516::InteractionClassHandle theInteraction)
247 throw (rti1516::InteractionClassNotDefined,
248 rti1516::FederateNotExecutionMember,
249 rti1516::SaveInProgress,
250 rti1516::RestoreInProgress,
251 rti1516::RTIinternalError);
254 virtual
void unpublishInteractionClass
255 (rti1516::InteractionClassHandle theInteraction)
256 throw (rti1516::InteractionClassNotDefined,
257 rti1516::FederateNotExecutionMember,
258 rti1516::SaveInProgress,
259 rti1516::RestoreInProgress,
260 rti1516::RTIinternalError);
263 virtual
void subscribeObjectClassAttributes
264 (rti1516::ObjectClassHandle theClass,
267 throw (rti1516::ObjectClassNotDefined,
268 rti1516::AttributeNotDefined,
269 rti1516::FederateNotExecutionMember,
270 rti1516::SaveInProgress,
271 rti1516::RestoreInProgress,
272 rti1516::RTIinternalError);
276 virtual
void unsubscribeObjectClass
277 (rti1516::ObjectClassHandle theClass)
278 throw (rti1516::ObjectClassNotDefined,
279 rti1516::FederateNotExecutionMember,
280 rti1516::SaveInProgress,
281 rti1516::RestoreInProgress,
282 rti1516::RTIinternalError);
284 virtual
void unsubscribeObjectClassAttributes
285 (rti1516::ObjectClassHandle theClass,
287 throw (rti1516::ObjectClassNotDefined,
288 rti1516::AttributeNotDefined,
289 rti1516::FederateNotExecutionMember,
290 rti1516::SaveInProgress,
291 rti1516::RestoreInProgress,
292 rti1516::RTIinternalError);
296 virtual
void subscribeInteractionClass
297 (rti1516::InteractionClassHandle theClass,
299 throw (rti1516::InteractionClassNotDefined,
300 rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
301 rti1516::FederateNotExecutionMember,
302 rti1516::SaveInProgress,
303 rti1516::RestoreInProgress,
304 rti1516::RTIinternalError);
307 virtual
void unsubscribeInteractionClass
308 (rti1516::InteractionClassHandle theClass)
309 throw (rti1516::InteractionClassNotDefined,
310 rti1516::FederateNotExecutionMember,
311 rti1516::SaveInProgress,
312 rti1516::RestoreInProgress,
313 rti1516::RTIinternalError);
320 virtual
void reserveObjectInstanceName
321 (std::wstring const & theObjectInstanceName)
322 throw (rti1516::IllegalName,
323 rti1516::FederateNotExecutionMember,
324 rti1516::SaveInProgress,
325 rti1516::RestoreInProgress,
326 rti1516::RTIinternalError);
330 virtual rti1516::ObjectInstanceHandle registerObjectInstance
331 (rti1516::ObjectClassHandle theClass)
332 throw (rti1516::ObjectClassNotDefined,
333 rti1516::ObjectClassNotPublished,
334 rti1516::FederateNotExecutionMember,
335 rti1516::SaveInProgress,
336 rti1516::RestoreInProgress,
337 rti1516::RTIinternalError);
339 virtual rti1516::ObjectInstanceHandle registerObjectInstance
340 (rti1516::ObjectClassHandle theClass,
341 std::wstring const & theObjectInstanceName)
342 throw (rti1516::ObjectClassNotDefined,
343 rti1516::ObjectClassNotPublished,
344 rti1516::ObjectInstanceNameNotReserved,
345 rti1516::ObjectInstanceNameInUse,
346 rti1516::FederateNotExecutionMember,
347 rti1516::SaveInProgress,
348 rti1516::RestoreInProgress,
349 rti1516::RTIinternalError);
354 virtual
void updateAttributeValues
355 (rti1516::ObjectInstanceHandle theObject,
357 rti1516::VariableLengthData const & theUserSuppliedTag)
358 throw (rti1516::ObjectInstanceNotKnown,
359 rti1516::AttributeNotDefined,
360 rti1516::AttributeNotOwned,
361 rti1516::FederateNotExecutionMember,
362 rti1516::SaveInProgress,
363 rti1516::RestoreInProgress,
364 rti1516::RTIinternalError);
366 virtual rti1516::MessageRetractionHandle updateAttributeValues
367 (rti1516::ObjectInstanceHandle theObject,
369 rti1516::VariableLengthData const & theUserSuppliedTag,
370 rti1516::LogicalTime const & theTime)
371 throw (rti1516::ObjectInstanceNotKnown,
372 rti1516::AttributeNotDefined,
373 rti1516::AttributeNotOwned,
374 rti1516::InvalidLogicalTime,
375 rti1516::FederateNotExecutionMember,
376 rti1516::SaveInProgress,
377 rti1516::RestoreInProgress,
378 rti1516::RTIinternalError);
383 virtual
void sendInteraction
384 (rti1516::InteractionClassHandle theInteraction,
386 rti1516::VariableLengthData const & theUserSuppliedTag)
387 throw (rti1516::InteractionClassNotPublished,
388 rti1516::InteractionClassNotDefined,
389 rti1516::InteractionParameterNotDefined,
390 rti1516::FederateNotExecutionMember,
391 rti1516::SaveInProgress,
392 rti1516::RestoreInProgress,
393 rti1516::RTIinternalError);
395 virtual rti1516::MessageRetractionHandle sendInteraction
396 (rti1516::InteractionClassHandle theInteraction,
398 rti1516::VariableLengthData const & theUserSuppliedTag,
399 rti1516::LogicalTime const & theTime)
400 throw (rti1516::InteractionClassNotPublished,
401 rti1516::InteractionClassNotDefined,
402 rti1516::InteractionParameterNotDefined,
403 rti1516::InvalidLogicalTime,
404 rti1516::FederateNotExecutionMember,
405 rti1516::SaveInProgress,
406 rti1516::RestoreInProgress,
407 rti1516::RTIinternalError);
412 virtual
void deleteObjectInstance
413 (rti1516::ObjectInstanceHandle theObject,
414 rti1516::VariableLengthData const & theUserSuppliedTag)
415 throw (rti1516::DeletePrivilegeNotHeld,
416 rti1516::ObjectInstanceNotKnown,
417 rti1516::FederateNotExecutionMember,
418 rti1516::SaveInProgress,
419 rti1516::RestoreInProgress,
420 rti1516::RTIinternalError);
422 virtual rti1516::MessageRetractionHandle deleteObjectInstance
423 (rti1516::ObjectInstanceHandle theObject,
424 rti1516::VariableLengthData const & theUserSuppliedTag,
425 rti1516::LogicalTime const & theTime)
426 throw (rti1516::DeletePrivilegeNotHeld,
427 rti1516::ObjectInstanceNotKnown,
428 rti1516::InvalidLogicalTime,
429 rti1516::FederateNotExecutionMember,
430 rti1516::SaveInProgress,
431 rti1516::RestoreInProgress,
432 rti1516::RTIinternalError);
436 virtual
void localDeleteObjectInstance
437 (rti1516::ObjectInstanceHandle theObject)
438 throw (rti1516::ObjectInstanceNotKnown,
439 rti1516::FederateOwnsAttributes,
440 rti1516::OwnershipAcquisitionPending,
441 rti1516::FederateNotExecutionMember,
442 rti1516::SaveInProgress,
443 rti1516::RestoreInProgress,
444 rti1516::RTIinternalError);
447 virtual
void changeAttributeTransportationType
448 (rti1516::ObjectInstanceHandle theObject,
451 throw (rti1516::ObjectInstanceNotKnown,
452 rti1516::AttributeNotDefined,
453 rti1516::AttributeNotOwned,
454 rti1516::FederateNotExecutionMember,
455 rti1516::SaveInProgress,
456 rti1516::RestoreInProgress,
457 rti1516::RTIinternalError);
460 virtual
void changeInteractionTransportationType
461 (rti1516::InteractionClassHandle theClass,
463 throw (rti1516::InteractionClassNotDefined,
464 rti1516::InteractionClassNotPublished,
465 rti1516::FederateNotExecutionMember,
466 rti1516::SaveInProgress,
467 rti1516::RestoreInProgress,
468 rti1516::RTIinternalError);
472 virtual
void requestAttributeValueUpdate
473 (rti1516::ObjectInstanceHandle theObject,
475 rti1516::VariableLengthData const & theUserSuppliedTag)
476 throw (rti1516::ObjectInstanceNotKnown,
477 rti1516::AttributeNotDefined,
478 rti1516::FederateNotExecutionMember,
479 rti1516::SaveInProgress,
480 rti1516::RestoreInProgress,
481 rti1516::RTIinternalError);
483 virtual
void requestAttributeValueUpdate
484 (rti1516::ObjectClassHandle theClass,
486 rti1516::VariableLengthData const & theUserSuppliedTag)
487 throw (rti1516::ObjectClassNotDefined,
488 rti1516::AttributeNotDefined,
489 rti1516::FederateNotExecutionMember,
490 rti1516::SaveInProgress,
491 rti1516::RestoreInProgress,
492 rti1516::RTIinternalError);
499 virtual
void unconditionalAttributeOwnershipDivestiture
500 (rti1516::ObjectInstanceHandle theObject,
502 throw (rti1516::ObjectInstanceNotKnown,
503 rti1516::AttributeNotDefined,
504 rti1516::AttributeNotOwned,
505 rti1516::FederateNotExecutionMember,
506 rti1516::SaveInProgress,
507 rti1516::RestoreInProgress,
508 rti1516::RTIinternalError);
511 virtual
void negotiatedAttributeOwnershipDivestiture
512 (rti1516::ObjectInstanceHandle theObject,
514 rti1516::VariableLengthData const & theUserSuppliedTag)
515 throw (rti1516::ObjectInstanceNotKnown,
516 rti1516::AttributeNotDefined,
517 rti1516::AttributeNotOwned,
518 rti1516::AttributeAlreadyBeingDivested,
519 rti1516::FederateNotExecutionMember,
520 rti1516::SaveInProgress,
521 rti1516::RestoreInProgress,
522 rti1516::RTIinternalError);
525 virtual
void confirmDivestiture
526 (rti1516::ObjectInstanceHandle theObject,
528 rti1516::VariableLengthData const & theUserSuppliedTag)
529 throw (rti1516::ObjectInstanceNotKnown,
530 rti1516::AttributeNotDefined,
531 rti1516::AttributeNotOwned,
532 rti1516::AttributeDivestitureWasNotRequested,
533 rti1516::NoAcquisitionPending,
534 rti1516::FederateNotExecutionMember,
535 rti1516::SaveInProgress,
536 rti1516::RestoreInProgress,
537 rti1516::RTIinternalError);
540 virtual
void attributeOwnershipAcquisition
541 (rti1516::ObjectInstanceHandle theObject,
543 rti1516::VariableLengthData const & theUserSuppliedTag)
544 throw (rti1516::ObjectInstanceNotKnown,
545 rti1516::ObjectClassNotPublished,
546 rti1516::AttributeNotDefined,
547 rti1516::AttributeNotPublished,
548 rti1516::FederateOwnsAttributes,
549 rti1516::FederateNotExecutionMember,
550 rti1516::SaveInProgress,
551 rti1516::RestoreInProgress,
552 rti1516::RTIinternalError);
555 virtual
void attributeOwnershipAcquisitionIfAvailable
556 (rti1516::ObjectInstanceHandle theObject,
558 throw (rti1516::ObjectInstanceNotKnown,
559 rti1516::ObjectClassNotPublished,
560 rti1516::AttributeNotDefined,
561 rti1516::AttributeNotPublished,
562 rti1516::FederateOwnsAttributes,
563 rti1516::AttributeAlreadyBeingAcquired,
564 rti1516::FederateNotExecutionMember,
565 rti1516::SaveInProgress,
566 rti1516::RestoreInProgress,
567 rti1516::RTIinternalError);
570 virtual
void attributeOwnershipDivestitureIfWanted
571 (rti1516::ObjectInstanceHandle theObject,
574 throw (rti1516::ObjectInstanceNotKnown,
575 rti1516::AttributeNotDefined,
576 rti1516::AttributeNotOwned,
577 rti1516::FederateNotExecutionMember,
578 rti1516::SaveInProgress,
579 rti1516::RestoreInProgress,
580 rti1516::RTIinternalError);
583 virtual
void cancelNegotiatedAttributeOwnershipDivestiture
584 (rti1516::ObjectInstanceHandle theObject,
586 throw (rti1516::ObjectInstanceNotKnown,
587 rti1516::AttributeNotDefined,
588 rti1516::AttributeNotOwned,
589 rti1516::AttributeDivestitureWasNotRequested,
590 rti1516::FederateNotExecutionMember,
591 rti1516::SaveInProgress,
592 rti1516::RestoreInProgress,
593 rti1516::RTIinternalError);
596 virtual
void cancelAttributeOwnershipAcquisition
597 (rti1516::ObjectInstanceHandle theObject,
599 throw (rti1516::ObjectInstanceNotKnown,
600 rti1516::AttributeNotDefined,
601 rti1516::AttributeAlreadyOwned,
602 rti1516::AttributeAcquisitionWasNotRequested,
603 rti1516::FederateNotExecutionMember,
604 rti1516::SaveInProgress,
605 rti1516::RestoreInProgress,
606 rti1516::RTIinternalError);
609 virtual
void queryAttributeOwnership
610 (rti1516::ObjectInstanceHandle theObject,
611 rti1516::AttributeHandle theAttribute)
612 throw (rti1516::ObjectInstanceNotKnown,
613 rti1516::AttributeNotDefined,
614 rti1516::FederateNotExecutionMember,
615 rti1516::SaveInProgress,
616 rti1516::RestoreInProgress,
617 rti1516::RTIinternalError);
620 virtual
bool isAttributeOwnedByFederate
621 (rti1516::ObjectInstanceHandle theObject,
622 rti1516::AttributeHandle theAttribute)
623 throw (rti1516::ObjectInstanceNotKnown,
624 rti1516::AttributeNotDefined,
625 rti1516::FederateNotExecutionMember,
626 rti1516::SaveInProgress,
627 rti1516::RestoreInProgress,
628 rti1516::RTIinternalError);
635 virtual
void enableTimeRegulation
636 (rti1516::LogicalTimeInterval const & theLookahead)
637 throw (rti1516::TimeRegulationAlreadyEnabled,
638 rti1516::InvalidLookahead,
639 rti1516::InTimeAdvancingState,
640 rti1516::RequestForTimeRegulationPending,
641 rti1516::FederateNotExecutionMember,
642 rti1516::SaveInProgress,
643 rti1516::RestoreInProgress,
644 rti1516::RTIinternalError);
647 virtual
void disableTimeRegulation ()
648 throw (rti1516::TimeRegulationIsNotEnabled,
649 rti1516::FederateNotExecutionMember,
650 rti1516::SaveInProgress,
651 rti1516::RestoreInProgress,
652 rti1516::RTIinternalError);
655 virtual
void enableTimeConstrained ()
656 throw (rti1516::TimeConstrainedAlreadyEnabled,
657 rti1516::InTimeAdvancingState,
658 rti1516::RequestForTimeConstrainedPending,
659 rti1516::FederateNotExecutionMember,
660 rti1516::SaveInProgress,
661 rti1516::RestoreInProgress,
662 rti1516::RTIinternalError);
665 virtual
void disableTimeConstrained ()
666 throw (rti1516::TimeConstrainedIsNotEnabled,
667 rti1516::FederateNotExecutionMember,
668 rti1516::SaveInProgress,
669 rti1516::RestoreInProgress,
670 rti1516::RTIinternalError);
673 virtual
void timeAdvanceRequest
674 (rti1516::LogicalTime const & theTime)
675 throw (rti1516::InvalidLogicalTime,
676 rti1516::LogicalTimeAlreadyPassed,
677 rti1516::InTimeAdvancingState,
678 rti1516::RequestForTimeRegulationPending,
679 rti1516::RequestForTimeConstrainedPending,
680 rti1516::FederateNotExecutionMember,
681 rti1516::SaveInProgress,
682 rti1516::RestoreInProgress,
683 rti1516::RTIinternalError);
686 virtual
void timeAdvanceRequestAvailable
687 (rti1516::LogicalTime const & theTime)
688 throw (rti1516::InvalidLogicalTime,
689 rti1516::LogicalTimeAlreadyPassed,
690 rti1516::InTimeAdvancingState,
691 rti1516::RequestForTimeRegulationPending,
692 rti1516::RequestForTimeConstrainedPending,
693 rti1516::FederateNotExecutionMember,
694 rti1516::SaveInProgress,
695 rti1516::RestoreInProgress,
696 rti1516::RTIinternalError);
699 virtual
void nextMessageRequest
700 (rti1516::LogicalTime const & theTime)
701 throw (rti1516::InvalidLogicalTime,
702 rti1516::LogicalTimeAlreadyPassed,
703 rti1516::InTimeAdvancingState,
704 rti1516::RequestForTimeRegulationPending,
705 rti1516::RequestForTimeConstrainedPending,
706 rti1516::FederateNotExecutionMember,
707 rti1516::SaveInProgress,
708 rti1516::RestoreInProgress,
709 rti1516::RTIinternalError);
712 virtual
void nextMessageRequestAvailable
713 (rti1516::LogicalTime const & theTime)
714 throw (rti1516::InvalidLogicalTime,
715 rti1516::LogicalTimeAlreadyPassed,
716 rti1516::InTimeAdvancingState,
717 rti1516::RequestForTimeRegulationPending,
718 rti1516::RequestForTimeConstrainedPending,
719 rti1516::FederateNotExecutionMember,
720 rti1516::SaveInProgress,
721 rti1516::RestoreInProgress,
722 rti1516::RTIinternalError);
725 virtual
void flushQueueRequest
726 (rti1516::LogicalTime const & theTime)
727 throw (rti1516::InvalidLogicalTime,
728 rti1516::LogicalTimeAlreadyPassed,
729 rti1516::InTimeAdvancingState,
730 rti1516::RequestForTimeRegulationPending,
731 rti1516::RequestForTimeConstrainedPending,
732 rti1516::FederateNotExecutionMember,
733 rti1516::SaveInProgress,
734 rti1516::RestoreInProgress,
735 rti1516::RTIinternalError);
738 virtual
void enableAsynchronousDelivery ()
739 throw (rti1516::AsynchronousDeliveryAlreadyEnabled,
740 rti1516::FederateNotExecutionMember,
741 rti1516::SaveInProgress,
742 rti1516::RestoreInProgress,
743 rti1516::RTIinternalError);
746 virtual
void disableAsynchronousDelivery ()
747 throw (rti1516::AsynchronousDeliveryAlreadyDisabled,
748 rti1516::FederateNotExecutionMember,
749 rti1516::SaveInProgress,
750 rti1516::RestoreInProgress,
751 rti1516::RTIinternalError);
754 virtual
bool queryGALT (rti1516::LogicalTime & theTime)
755 throw (rti1516::FederateNotExecutionMember,
756 rti1516::SaveInProgress,
757 rti1516::RestoreInProgress,
758 rti1516::RTIinternalError);
761 virtual
void queryLogicalTime (rti1516::LogicalTime & theTime)
762 throw (rti1516::FederateNotExecutionMember,
763 rti1516::SaveInProgress,
764 rti1516::RestoreInProgress,
765 rti1516::RTIinternalError);
768 virtual
bool queryLITS (rti1516::LogicalTime & theTime)
769 throw (rti1516::FederateNotExecutionMember,
770 rti1516::SaveInProgress,
771 rti1516::RestoreInProgress,
772 rti1516::RTIinternalError);
775 virtual
void modifyLookahead
776 (rti1516::LogicalTimeInterval const & theLookahead)
777 throw (rti1516::TimeRegulationIsNotEnabled,
778 rti1516::InvalidLookahead,
779 rti1516::InTimeAdvancingState,
780 rti1516::FederateNotExecutionMember,
781 rti1516::SaveInProgress,
782 rti1516::RestoreInProgress,
783 rti1516::RTIinternalError);
786 virtual
void queryLookahead (rti1516::LogicalTimeInterval & interval)
787 throw (rti1516::TimeRegulationIsNotEnabled,
788 rti1516::FederateNotExecutionMember,
789 rti1516::SaveInProgress,
790 rti1516::RestoreInProgress,
791 rti1516::RTIinternalError);
795 (rti1516::MessageRetractionHandle theHandle)
796 throw (rti1516::InvalidRetractionHandle,
797 rti1516::TimeRegulationIsNotEnabled,
798 rti1516::MessageCanNoLongerBeRetracted,
799 rti1516::FederateNotExecutionMember,
800 rti1516::SaveInProgress,
801 rti1516::RestoreInProgress,
802 rti1516::RTIinternalError);
805 virtual
void changeAttributeOrderType
806 (rti1516::ObjectInstanceHandle theObject,
809 throw (rti1516::ObjectInstanceNotKnown,
810 rti1516::AttributeNotDefined,
811 rti1516::AttributeNotOwned,
812 rti1516::FederateNotExecutionMember,
813 rti1516::SaveInProgress,
814 rti1516::RestoreInProgress,
815 rti1516::RTIinternalError);
818 virtual
void changeInteractionOrderType
819 (rti1516::InteractionClassHandle theClass,
821 throw (rti1516::InteractionClassNotDefined,
822 rti1516::InteractionClassNotPublished,
823 rti1516::FederateNotExecutionMember,
824 rti1516::SaveInProgress,
825 rti1516::RestoreInProgress,
826 rti1516::RTIinternalError);
833 virtual rti1516::RegionHandle createRegion
835 throw (rti1516::InvalidDimensionHandle,
836 rti1516::FederateNotExecutionMember,
837 rti1516::SaveInProgress,
838 rti1516::RestoreInProgress,
839 rti1516::RTIinternalError);
842 virtual
void commitRegionModifications
844 throw (rti1516::InvalidRegion,
845 rti1516::RegionNotCreatedByThisFederate,
846 rti1516::FederateNotExecutionMember,
847 rti1516::SaveInProgress,
848 rti1516::RestoreInProgress,
849 rti1516::RTIinternalError);
852 virtual
void deleteRegion
853 (rti1516::RegionHandle theRegion)
854 throw (rti1516::InvalidRegion,
855 rti1516::RegionNotCreatedByThisFederate,
856 rti1516::RegionInUseForUpdateOrSubscription,
857 rti1516::FederateNotExecutionMember,
858 rti1516::SaveInProgress,
859 rti1516::RestoreInProgress,
860 rti1516::RTIinternalError);
864 virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
865 (rti1516::ObjectClassHandle theClass,
867 theAttributeHandleSetRegionHandleSetPairVector)
868 throw (rti1516::ObjectClassNotDefined,
869 rti1516::ObjectClassNotPublished,
870 rti1516::AttributeNotDefined,
871 rti1516::AttributeNotPublished,
872 rti1516::InvalidRegion,
873 rti1516::RegionNotCreatedByThisFederate,
874 rti1516::InvalidRegionContext,
875 rti1516::FederateNotExecutionMember,
876 rti1516::SaveInProgress,
877 rti1516::RestoreInProgress,
878 rti1516::RTIinternalError);
880 virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
881 (rti1516::ObjectClassHandle theClass,
883 theAttributeHandleSetRegionHandleSetPairVector,
884 std::wstring const & theObjectInstanceName)
885 throw (rti1516::ObjectClassNotDefined,
886 rti1516::ObjectClassNotPublished,
887 rti1516::AttributeNotDefined,
888 rti1516::AttributeNotPublished,
889 rti1516::InvalidRegion,
890 rti1516::RegionNotCreatedByThisFederate,
891 rti1516::InvalidRegionContext,
892 rti1516::ObjectInstanceNameNotReserved,
893 rti1516::ObjectInstanceNameInUse,
894 rti1516::FederateNotExecutionMember,
895 rti1516::SaveInProgress,
896 rti1516::RestoreInProgress,
897 rti1516::RTIinternalError);
901 virtual
void associateRegionsForUpdates
902 (rti1516::ObjectInstanceHandle theObject,
904 theAttributeHandleSetRegionHandleSetPairVector)
905 throw (rti1516::ObjectInstanceNotKnown,
906 rti1516::AttributeNotDefined,
907 rti1516::InvalidRegion,
908 rti1516::RegionNotCreatedByThisFederate,
909 rti1516::InvalidRegionContext,
910 rti1516::FederateNotExecutionMember,
911 rti1516::SaveInProgress,
912 rti1516::RestoreInProgress,
913 rti1516::RTIinternalError);
916 virtual
void unassociateRegionsForUpdates
917 (rti1516::ObjectInstanceHandle theObject,
919 theAttributeHandleSetRegionHandleSetPairVector)
920 throw (rti1516::ObjectInstanceNotKnown,
921 rti1516::AttributeNotDefined,
922 rti1516::InvalidRegion,
923 rti1516::RegionNotCreatedByThisFederate,
924 rti1516::FederateNotExecutionMember,
925 rti1516::SaveInProgress,
926 rti1516::RestoreInProgress,
927 rti1516::RTIinternalError);
930 virtual
void subscribeObjectClassAttributesWithRegions
931 (rti1516::ObjectClassHandle theClass,
933 theAttributeHandleSetRegionHandleSetPairVector,
935 throw (rti1516::ObjectClassNotDefined,
936 rti1516::AttributeNotDefined,
937 rti1516::InvalidRegion,
938 rti1516::RegionNotCreatedByThisFederate,
939 rti1516::InvalidRegionContext,
940 rti1516::FederateNotExecutionMember,
941 rti1516::SaveInProgress,
942 rti1516::RestoreInProgress,
943 rti1516::RTIinternalError);
946 virtual
void unsubscribeObjectClassAttributesWithRegions
947 (rti1516::ObjectClassHandle theClass,
949 theAttributeHandleSetRegionHandleSetPairVector)
950 throw (rti1516::ObjectClassNotDefined,
951 rti1516::AttributeNotDefined,
952 rti1516::InvalidRegion,
953 rti1516::RegionNotCreatedByThisFederate,
954 rti1516::FederateNotExecutionMember,
955 rti1516::SaveInProgress,
956 rti1516::RestoreInProgress,
957 rti1516::RTIinternalError);
960 virtual
void subscribeInteractionClassWithRegions
961 (rti1516::InteractionClassHandle theClass,
964 throw (rti1516::InteractionClassNotDefined,
965 rti1516::InvalidRegion,
966 rti1516::RegionNotCreatedByThisFederate,
967 rti1516::InvalidRegionContext,
968 rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
969 rti1516::FederateNotExecutionMember,
970 rti1516::SaveInProgress,
971 rti1516::RestoreInProgress,
972 rti1516::RTIinternalError);
975 virtual
void unsubscribeInteractionClassWithRegions
976 (rti1516::InteractionClassHandle theClass,
978 throw (rti1516::InteractionClassNotDefined,
979 rti1516::InvalidRegion,
980 rti1516::RegionNotCreatedByThisFederate,
981 rti1516::FederateNotExecutionMember,
982 rti1516::SaveInProgress,
983 rti1516::RestoreInProgress,
984 rti1516::RTIinternalError);
988 virtual
void sendInteractionWithRegions
989 (rti1516::InteractionClassHandle theInteraction,
992 rti1516::VariableLengthData const & theUserSuppliedTag)
993 throw (rti1516::InteractionClassNotDefined,
994 rti1516::InteractionClassNotPublished,
995 rti1516::InteractionParameterNotDefined,
996 rti1516::InvalidRegion,
997 rti1516::RegionNotCreatedByThisFederate,
998 rti1516::InvalidRegionContext,
999 rti1516::FederateNotExecutionMember,
1000 rti1516::SaveInProgress,
1001 rti1516::RestoreInProgress,
1002 rti1516::RTIinternalError);
1004 virtual rti1516::MessageRetractionHandle sendInteractionWithRegions
1005 (rti1516::InteractionClassHandle theInteraction,
1008 rti1516::VariableLengthData const & theUserSuppliedTag,
1009 rti1516::LogicalTime const & theTime)
1010 throw (rti1516::InteractionClassNotDefined,
1011 rti1516::InteractionClassNotPublished,
1012 rti1516::InteractionParameterNotDefined,
1013 rti1516::InvalidRegion,
1014 rti1516::RegionNotCreatedByThisFederate,
1015 rti1516::InvalidRegionContext,
1016 rti1516::InvalidLogicalTime,
1017 rti1516::FederateNotExecutionMember,
1018 rti1516::SaveInProgress,
1019 rti1516::RestoreInProgress,
1020 rti1516::RTIinternalError);
1024 virtual
void requestAttributeValueUpdateWithRegions
1025 (rti1516::ObjectClassHandle theClass,
1027 rti1516::VariableLengthData const & theUserSuppliedTag)
1028 throw (rti1516::ObjectClassNotDefined,
1029 rti1516::AttributeNotDefined,
1030 rti1516::InvalidRegion,
1031 rti1516::RegionNotCreatedByThisFederate,
1032 rti1516::InvalidRegionContext,
1033 rti1516::FederateNotExecutionMember,
1034 rti1516::SaveInProgress,
1035 rti1516::RestoreInProgress,
1036 rti1516::RTIinternalError);
1043 virtual rti1516::ObjectClassHandle getObjectClassHandle
1044 (std::wstring const & theName)
1045 throw (rti1516::NameNotFound,
1046 rti1516::FederateNotExecutionMember,
1047 rti1516::RTIinternalError);
1050 virtual std::wstring getObjectClassName
1051 (rti1516::ObjectClassHandle theHandle)
1052 throw (rti1516::InvalidObjectClassHandle,
1053 rti1516::FederateNotExecutionMember,
1054 rti1516::RTIinternalError);
1057 virtual rti1516::AttributeHandle getAttributeHandle
1058 (rti1516::ObjectClassHandle whichClass,
1059 std::wstring const & theAttributeName)
1060 throw (rti1516::InvalidObjectClassHandle,
1061 rti1516::NameNotFound,
1062 rti1516::FederateNotExecutionMember,
1063 rti1516::RTIinternalError);
1066 virtual std::wstring getAttributeName
1067 (rti1516::ObjectClassHandle whichClass,
1068 rti1516::AttributeHandle theHandle)
1069 throw (rti1516::InvalidObjectClassHandle,
1070 rti1516::InvalidAttributeHandle,
1071 rti1516::AttributeNotDefined,
1072 rti1516::FederateNotExecutionMember,
1073 rti1516::RTIinternalError);
1076 virtual rti1516::InteractionClassHandle getInteractionClassHandle
1077 (std::wstring const & theName)
1078 throw (rti1516::NameNotFound,
1079 rti1516::FederateNotExecutionMember,
1080 rti1516::RTIinternalError);
1083 virtual std::wstring getInteractionClassName
1084 (rti1516::InteractionClassHandle theHandle)
1085 throw (rti1516::InvalidInteractionClassHandle,
1086 rti1516::FederateNotExecutionMember,
1087 rti1516::RTIinternalError);
1090 virtual rti1516::ParameterHandle getParameterHandle
1091 (rti1516::InteractionClassHandle whichClass,
1092 std::wstring const & theName)
1093 throw (rti1516::InvalidInteractionClassHandle,
1094 rti1516::NameNotFound,
1095 rti1516::FederateNotExecutionMember,
1096 rti1516::RTIinternalError);
1099 virtual std::wstring getParameterName
1100 (rti1516::InteractionClassHandle whichClass,
1101 rti1516::ParameterHandle theHandle)
1102 throw (rti1516::InvalidInteractionClassHandle,
1103 rti1516::InvalidParameterHandle,
1104 rti1516::InteractionParameterNotDefined,
1105 rti1516::FederateNotExecutionMember,
1106 rti1516::RTIinternalError);
1109 virtual rti1516::ObjectInstanceHandle getObjectInstanceHandle
1110 (std::wstring const & theName)
1111 throw (rti1516::ObjectInstanceNotKnown,
1112 rti1516::FederateNotExecutionMember,
1113 rti1516::RTIinternalError);
1116 virtual std::wstring getObjectInstanceName
1117 (rti1516::ObjectInstanceHandle theHandle)
1118 throw (rti1516::ObjectInstanceNotKnown,
1119 rti1516::FederateNotExecutionMember,
1120 rti1516::RTIinternalError);
1123 virtual rti1516::DimensionHandle getDimensionHandle
1124 (std::wstring const & theName)
1125 throw (rti1516::NameNotFound,
1126 rti1516::FederateNotExecutionMember,
1127 rti1516::RTIinternalError);
1130 virtual std::wstring getDimensionName
1131 (rti1516::DimensionHandle theHandle)
1132 throw (rti1516::InvalidDimensionHandle,
1133 rti1516::FederateNotExecutionMember,
1134 rti1516::RTIinternalError);
1137 virtual
unsigned long getDimensionUpperBound
1138 (rti1516::DimensionHandle theHandle)
1139 throw (rti1516::InvalidDimensionHandle,
1140 rti1516::FederateNotExecutionMember,
1141 rti1516::RTIinternalError);
1145 (rti1516::ObjectClassHandle theClass,
1146 rti1516::AttributeHandle theHandle)
1147 throw (rti1516::InvalidObjectClassHandle,
1148 rti1516::InvalidAttributeHandle,
1149 rti1516::AttributeNotDefined,
1150 rti1516::FederateNotExecutionMember,
1151 rti1516::RTIinternalError);
1154 virtual rti1516::ObjectClassHandle getKnownObjectClassHandle
1155 (rti1516::ObjectInstanceHandle theObject)
1156 throw (rti1516::ObjectInstanceNotKnown,
1157 rti1516::FederateNotExecutionMember,
1158 rti1516::RTIinternalError);
1162 (rti1516::InteractionClassHandle theClass)
1163 throw (rti1516::InvalidInteractionClassHandle,
1164 rti1516::FederateNotExecutionMember,
1165 rti1516::RTIinternalError);
1169 (std::wstring const & transportationName)
1170 throw (rti1516::InvalidTransportationName,
1171 rti1516::FederateNotExecutionMember,
1172 rti1516::RTIinternalError);
1175 virtual std::wstring getTransportationName
1177 throw (rti1516::InvalidTransportationType,
1178 rti1516::FederateNotExecutionMember,
1179 rti1516::RTIinternalError);
1183 (std::wstring const & orderName)
1184 throw (rti1516::InvalidOrderName,
1185 rti1516::FederateNotExecutionMember,
1186 rti1516::RTIinternalError);
1189 virtual std::wstring getOrderName
1191 throw (rti1516::InvalidOrderType,
1192 rti1516::FederateNotExecutionMember,
1193 rti1516::RTIinternalError);
1196 virtual
void enableObjectClassRelevanceAdvisorySwitch ()
1197 throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOn,
1198 rti1516::FederateNotExecutionMember,
1199 rti1516::SaveInProgress,
1200 rti1516::RestoreInProgress,
1201 rti1516::RTIinternalError);
1204 virtual
void disableObjectClassRelevanceAdvisorySwitch ()
1205 throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOff,
1206 rti1516::FederateNotExecutionMember,
1207 rti1516::SaveInProgress,
1208 rti1516::RestoreInProgress,
1209 rti1516::RTIinternalError);
1212 virtual
void enableAttributeRelevanceAdvisorySwitch ()
1213 throw (rti1516::AttributeRelevanceAdvisorySwitchIsOn,
1214 rti1516::FederateNotExecutionMember,
1215 rti1516::SaveInProgress,
1216 rti1516::RestoreInProgress,
1217 rti1516::RTIinternalError);
1220 virtual
void disableAttributeRelevanceAdvisorySwitch ()
1221 throw (rti1516::AttributeRelevanceAdvisorySwitchIsOff,
1222 rti1516::FederateNotExecutionMember,
1223 rti1516::SaveInProgress,
1224 rti1516::RestoreInProgress,
1225 rti1516::RTIinternalError);
1228 virtual
void enableAttributeScopeAdvisorySwitch ()
1229 throw (rti1516::AttributeScopeAdvisorySwitchIsOn,
1230 rti1516::FederateNotExecutionMember,
1231 rti1516::SaveInProgress,
1232 rti1516::RestoreInProgress,
1233 rti1516::RTIinternalError);
1236 virtual
void disableAttributeScopeAdvisorySwitch ()
1237 throw (rti1516::AttributeScopeAdvisorySwitchIsOff,
1238 rti1516::FederateNotExecutionMember,
1239 rti1516::SaveInProgress,
1240 rti1516::RestoreInProgress,
1241 rti1516::RTIinternalError);
1244 virtual
void enableInteractionRelevanceAdvisorySwitch ()
1245 throw (rti1516::InteractionRelevanceAdvisorySwitchIsOn,
1246 rti1516::FederateNotExecutionMember,
1247 rti1516::SaveInProgress,
1248 rti1516::RestoreInProgress,
1249 rti1516::RTIinternalError);
1252 virtual
void disableInteractionRelevanceAdvisorySwitch ()
1253 throw (rti1516::InteractionRelevanceAdvisorySwitchIsOff,
1254 rti1516::FederateNotExecutionMember,
1255 rti1516::SaveInProgress,
1256 rti1516::RestoreInProgress,
1257 rti1516::RTIinternalError);
1262 (rti1516::RegionHandle theRegionHandle)
1263 throw (rti1516::InvalidRegion,
1264 rti1516::FederateNotExecutionMember,
1265 rti1516::SaveInProgress,
1266 rti1516::RestoreInProgress,
1267 rti1516::RTIinternalError);
1271 rti1516::RangeBounds getRangeBounds
1272 (rti1516::RegionHandle theRegionHandle,
1273 rti1516::DimensionHandle theDimensionHandle)
1274 throw (rti1516::InvalidRegion,
1275 rti1516::RegionDoesNotContainSpecifiedDimension,
1276 rti1516::FederateNotExecutionMember,
1277 rti1516::SaveInProgress,
1278 rti1516::RestoreInProgress,
1279 rti1516::RTIinternalError);
1282 virtual
void setRangeBounds
1283 (rti1516::RegionHandle theRegionHandle,
1284 rti1516::DimensionHandle theDimensionHandle,
1285 rti1516::RangeBounds const & theRangeBounds)
1286 throw (rti1516::InvalidRegion,
1287 rti1516::RegionNotCreatedByThisFederate,
1288 rti1516::RegionDoesNotContainSpecifiedDimension,
1289 rti1516::InvalidRangeBound,
1290 rti1516::FederateNotExecutionMember,
1291 rti1516::SaveInProgress,
1292 rti1516::RestoreInProgress,
1293 rti1516::RTIinternalError);
1296 virtual
unsigned long normalizeFederateHandle
1297 (rti1516::FederateHandle theFederateHandle)
1298 throw (rti1516::FederateNotExecutionMember,
1299 rti1516::InvalidFederateHandle,
1300 rti1516::RTIinternalError);
1303 virtual
unsigned long normalizeServiceGroup
1305 throw (rti1516::FederateNotExecutionMember,
1306 rti1516::InvalidServiceGroup,
1307 rti1516::RTIinternalError);
1310 virtual
bool evokeCallback(
double approximateMinimumTimeInSeconds,
1311 bool unlockWhileWaiting=false)
1312 throw (rti1516::FederateNotExecutionMember,
1313 rti1516::RTIinternalError);
1316 virtual
bool evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
1317 double approximateMaximumTimeInSeconds,
1318 bool unlockWhileWaiting=false)
1319 throw (rti1516::FederateNotExecutionMember,
1320 rti1516::RTIinternalError);
1323 virtual
void enableCallbacks ()
1324 throw (rti1516::FederateNotExecutionMember,
1325 rti1516::SaveInProgress,
1326 rti1516::RestoreInProgress,
1327 rti1516::RTIinternalError);
1330 virtual
void disableCallbacks ()
1331 throw (rti1516::FederateNotExecutionMember,
1332 rti1516::SaveInProgress,
1333 rti1516::RestoreInProgress,
1334 rti1516::RTIinternalError);
1338 virtual rti1516::FederateHandle decodeFederateHandle(
1339 rti1516::VariableLengthData const & encodedValue) const;
1341 virtual rti1516::ObjectClassHandle decodeObjectClassHandle(
1342 rti1516::VariableLengthData const & encodedValue) const;
1344 virtual rti1516::InteractionClassHandle decodeInteractionClassHandle(
1345 rti1516::VariableLengthData const & encodedValue) const;
1347 virtual rti1516::ObjectInstanceHandle decodeObjectInstanceHandle(
1348 rti1516::VariableLengthData const & encodedValue) const;
1350 virtual rti1516::AttributeHandle decodeAttributeHandle(
1351 rti1516::VariableLengthData const & encodedValue) const;
1353 virtual rti1516::ParameterHandle decodeParameterHandle(
1354 rti1516::VariableLengthData const & encodedValue) const;
1356 virtual rti1516::DimensionHandle decodeDimensionHandle(
1357 rti1516::VariableLengthData const & encodedValue) const;
1359 virtual rti1516::MessageRetractionHandle decodeMessageRetractionHandle(
1360 rti1516::VariableLengthData const & encodedValue) const;
1362 virtual rti1516::RegionHandle decodeRegionHandle(
1363 rti1516::VariableLengthData const & encodedValue) const;
1376 static DtRtiAmbassadorImplementor* create(rti1516::RTIambassador* topLevelAmbPtr,
1377 const std::vector< std::wstring >& initArgs);
1382 static
void setCreatorFunction(DtRtiAmbassadorImplementorCreator creator);
1387 virtual
void throwInternalError(const MAKRti::DtString & errorMessage) const;
1390 virtual
void throwNotConnected(const MAKRti::DtString & errorMessage) const;
1393 virtual
void throwNotJoined(const MAKRti::DtString & errorMessage) const;
1398 rti1516::RTIambassador* myTopLevelAmb;
1403 static DtRtiAmbassadorImplementorCreator theCreator;