6 #ifndef netStatsRtiAmb1516_h__
7 #define netStatsRtiAmb1516_h__
14 #include <vlutil/vlTime.h>
16 class DtNetStatsFedAmbWrapper;
25 class DtNetStatsRtiAmbImpl :
public DtRtiAmbassadorImplementor
30 DtNetStatsRtiAmbImpl( rti1516::RTIambassador* topLevelAmbPtr,
31 const std::vector< std::wstring >& initArgs);
40 virtual ~DtNetStatsRtiAmbImpl()
51 virtual
void createFederationExecution
52 (std::wstring const & federationExecutionName,
53 std::wstring const & fullPathNameToTheFDDfile,
54 std::wstring const & logicalTimeImplementationName = L"")
55 throw (rti1516::FederationExecutionAlreadyExists,
56 rti1516::CouldNotOpenFDD,
57 rti1516::ErrorReadingFDD,
58 rti1516::RTIinternalError);
61 virtual
void destroyFederationExecution
62 (std::wstring const & federationExecutionName)
63 throw (rti1516::FederatesCurrentlyJoined,
64 rti1516::FederationExecutionDoesNotExist,
65 rti1516::RTIinternalError);
68 virtual rti1516::FederateHandle joinFederationExecution
69 (std::wstring const & federateType,
70 std::wstring const & federationExecutionName,
71 rti1516::FederateAmbassador & federateAmbassador,
73 throw (rti1516::FederateAlreadyExecutionMember,
74 rti1516::FederationExecutionDoesNotExist,
75 rti1516::SaveInProgress,
76 rti1516::RestoreInProgress,
77 rti1516::RTIinternalError);
80 virtual
void resignFederationExecution
82 throw (rti1516::OwnershipAcquisitionPending,
83 rti1516::FederateOwnsAttributes,
84 rti1516::FederateNotExecutionMember,
85 rti1516::RTIinternalError);
88 virtual
void registerFederationSynchronizationPoint
89 (std::wstring const & label,
90 rti1516::VariableLengthData const & theUserSuppliedTag)
91 throw (rti1516::FederateNotExecutionMember,
92 rti1516::SaveInProgress,
93 rti1516::RestoreInProgress,
94 rti1516::RTIinternalError);
96 virtual
void registerFederationSynchronizationPoint
97 (std::wstring const & label,
98 rti1516::VariableLengthData const & theUserSuppliedTag,
100 throw (rti1516::FederateNotExecutionMember,
101 rti1516::SaveInProgress,
102 rti1516::RestoreInProgress,
103 rti1516::RTIinternalError);
106 virtual
void synchronizationPointAchieved
107 (std::wstring const & label)
108 throw (rti1516::SynchronizationPointLabelNotAnnounced,
109 rti1516::FederateNotExecutionMember,
110 rti1516::SaveInProgress,
111 rti1516::RestoreInProgress,
112 rti1516::RTIinternalError);
115 virtual
void requestFederationSave
116 (std::wstring const & label)
117 throw (rti1516::FederateNotExecutionMember,
118 rti1516::SaveInProgress,
119 rti1516::RestoreInProgress,
120 rti1516::RTIinternalError);
122 virtual
void requestFederationSave
123 (std::wstring const & label,
124 rti1516::LogicalTime const & theTime)
125 throw (rti1516::LogicalTimeAlreadyPassed,
126 rti1516::InvalidLogicalTime,
127 rti1516::FederateUnableToUseTime,
128 rti1516::FederateNotExecutionMember,
129 rti1516::SaveInProgress,
130 rti1516::RestoreInProgress,
131 rti1516::RTIinternalError);
134 virtual
void federateSaveBegun ()
135 throw (rti1516::SaveNotInitiated,
136 rti1516::FederateNotExecutionMember,
137 rti1516::RestoreInProgress,
138 rti1516::RTIinternalError);
141 virtual
void federateSaveComplete ()
142 throw (rti1516::FederateHasNotBegunSave,
143 rti1516::FederateNotExecutionMember,
144 rti1516::RestoreInProgress,
145 rti1516::RTIinternalError);
147 virtual
void federateSaveNotComplete()
148 throw (rti1516::FederateHasNotBegunSave,
149 rti1516::FederateNotExecutionMember,
150 rti1516::RestoreInProgress,
151 rti1516::RTIinternalError);
154 virtual
void queryFederationSaveStatus ()
155 throw (rti1516::FederateNotExecutionMember,
156 rti1516::RestoreInProgress,
157 rti1516::RTIinternalError);
160 virtual
void requestFederationRestore
161 (std::wstring const & label)
162 throw (rti1516::FederateNotExecutionMember,
163 rti1516::SaveInProgress,
164 rti1516::RestoreInProgress,
165 rti1516::RTIinternalError);
168 virtual
void federateRestoreComplete ()
169 throw (rti1516::RestoreNotRequested,
170 rti1516::FederateNotExecutionMember,
171 rti1516::SaveInProgress,
172 rti1516::RTIinternalError);
174 virtual
void federateRestoreNotComplete ()
175 throw (rti1516::RestoreNotRequested,
176 rti1516::FederateNotExecutionMember,
177 rti1516::SaveInProgress,
178 rti1516::RTIinternalError);
181 virtual
void queryFederationRestoreStatus ()
182 throw (rti1516::FederateNotExecutionMember,
183 rti1516::SaveInProgress,
184 rti1516::RTIinternalError);
191 virtual
void publishObjectClassAttributes
192 (rti1516::ObjectClassHandle theClass,
194 throw (rti1516::ObjectClassNotDefined,
195 rti1516::AttributeNotDefined,
196 rti1516::FederateNotExecutionMember,
197 rti1516::SaveInProgress,
198 rti1516::RestoreInProgress,
199 rti1516::RTIinternalError);
202 virtual
void unpublishObjectClass
203 (rti1516::ObjectClassHandle theClass)
204 throw (rti1516::ObjectClassNotDefined,
205 rti1516::OwnershipAcquisitionPending,
206 rti1516::FederateNotExecutionMember,
207 rti1516::SaveInProgress,
208 rti1516::RestoreInProgress,
209 rti1516::RTIinternalError);
211 virtual
void unpublishObjectClassAttributes
212 (rti1516::ObjectClassHandle theClass,
214 throw (rti1516::ObjectClassNotDefined,
215 rti1516::AttributeNotDefined,
216 rti1516::OwnershipAcquisitionPending,
217 rti1516::FederateNotExecutionMember,
218 rti1516::SaveInProgress,
219 rti1516::RestoreInProgress,
220 rti1516::RTIinternalError);
223 virtual
void publishInteractionClass
224 (rti1516::InteractionClassHandle theInteraction)
225 throw (rti1516::InteractionClassNotDefined,
226 rti1516::FederateNotExecutionMember,
227 rti1516::SaveInProgress,
228 rti1516::RestoreInProgress,
229 rti1516::RTIinternalError);
232 virtual
void unpublishInteractionClass
233 (rti1516::InteractionClassHandle theInteraction)
234 throw (rti1516::InteractionClassNotDefined,
235 rti1516::FederateNotExecutionMember,
236 rti1516::SaveInProgress,
237 rti1516::RestoreInProgress,
238 rti1516::RTIinternalError);
241 virtual
void subscribeObjectClassAttributes
242 (rti1516::ObjectClassHandle theClass,
245 throw (rti1516::ObjectClassNotDefined,
246 rti1516::AttributeNotDefined,
247 rti1516::FederateNotExecutionMember,
248 rti1516::SaveInProgress,
249 rti1516::RestoreInProgress,
250 rti1516::RTIinternalError);
253 virtual
void unsubscribeObjectClass
254 (rti1516::ObjectClassHandle theClass)
255 throw (rti1516::ObjectClassNotDefined,
256 rti1516::FederateNotExecutionMember,
257 rti1516::SaveInProgress,
258 rti1516::RestoreInProgress,
259 rti1516::RTIinternalError);
261 virtual
void unsubscribeObjectClassAttributes
262 (rti1516::ObjectClassHandle theClass,
264 throw (rti1516::ObjectClassNotDefined,
265 rti1516::AttributeNotDefined,
266 rti1516::FederateNotExecutionMember,
267 rti1516::SaveInProgress,
268 rti1516::RestoreInProgress,
269 rti1516::RTIinternalError);
272 virtual
void subscribeInteractionClass
273 (rti1516::InteractionClassHandle theClass,
275 throw (rti1516::InteractionClassNotDefined,
276 rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
277 rti1516::FederateNotExecutionMember,
278 rti1516::SaveInProgress,
279 rti1516::RestoreInProgress,
280 rti1516::RTIinternalError);
283 virtual
void unsubscribeInteractionClass
284 (rti1516::InteractionClassHandle theClass)
285 throw (rti1516::InteractionClassNotDefined,
286 rti1516::FederateNotExecutionMember,
287 rti1516::SaveInProgress,
288 rti1516::RestoreInProgress,
289 rti1516::RTIinternalError);
296 virtual
void reserveObjectInstanceName
297 (std::wstring const & theObjectInstanceName)
298 throw (rti1516::IllegalName,
299 rti1516::FederateNotExecutionMember,
300 rti1516::SaveInProgress,
301 rti1516::RestoreInProgress,
302 rti1516::RTIinternalError);
305 virtual rti1516::ObjectInstanceHandle registerObjectInstance
306 (rti1516::ObjectClassHandle theClass)
307 throw (rti1516::ObjectClassNotDefined,
308 rti1516::ObjectClassNotPublished,
309 rti1516::FederateNotExecutionMember,
310 rti1516::SaveInProgress,
311 rti1516::RestoreInProgress,
312 rti1516::RTIinternalError);
314 virtual rti1516::ObjectInstanceHandle registerObjectInstance
315 (rti1516::ObjectClassHandle theClass,
316 std::wstring const & theObjectInstanceName)
317 throw (rti1516::ObjectClassNotDefined,
318 rti1516::ObjectClassNotPublished,
319 rti1516::ObjectInstanceNameNotReserved,
320 rti1516::ObjectInstanceNameInUse,
321 rti1516::FederateNotExecutionMember,
322 rti1516::SaveInProgress,
323 rti1516::RestoreInProgress,
324 rti1516::RTIinternalError);
327 virtual
void updateAttributeValues
328 (rti1516::ObjectInstanceHandle theObject,
330 rti1516::VariableLengthData const & theUserSuppliedTag)
331 throw (rti1516::ObjectInstanceNotKnown,
332 rti1516::AttributeNotDefined,
333 rti1516::AttributeNotOwned,
334 rti1516::FederateNotExecutionMember,
335 rti1516::SaveInProgress,
336 rti1516::RestoreInProgress,
337 rti1516::RTIinternalError);
339 virtual rti1516::MessageRetractionHandle updateAttributeValues
340 (rti1516::ObjectInstanceHandle theObject,
342 rti1516::VariableLengthData const & theUserSuppliedTag,
343 rti1516::LogicalTime const & theTime)
344 throw (rti1516::ObjectInstanceNotKnown,
345 rti1516::AttributeNotDefined,
346 rti1516::AttributeNotOwned,
347 rti1516::InvalidLogicalTime,
348 rti1516::FederateNotExecutionMember,
349 rti1516::SaveInProgress,
350 rti1516::RestoreInProgress,
351 rti1516::RTIinternalError);
354 virtual
void sendInteraction
355 (rti1516::InteractionClassHandle theInteraction,
357 rti1516::VariableLengthData const & theUserSuppliedTag)
358 throw (rti1516::InteractionClassNotPublished,
359 rti1516::InteractionClassNotDefined,
360 rti1516::InteractionParameterNotDefined,
361 rti1516::FederateNotExecutionMember,
362 rti1516::SaveInProgress,
363 rti1516::RestoreInProgress,
364 rti1516::RTIinternalError);
366 virtual rti1516::MessageRetractionHandle sendInteraction
367 (rti1516::InteractionClassHandle theInteraction,
369 rti1516::VariableLengthData const & theUserSuppliedTag,
370 rti1516::LogicalTime const & theTime)
371 throw (rti1516::InteractionClassNotPublished,
372 rti1516::InteractionClassNotDefined,
373 rti1516::InteractionParameterNotDefined,
374 rti1516::InvalidLogicalTime,
375 rti1516::FederateNotExecutionMember,
376 rti1516::SaveInProgress,
377 rti1516::RestoreInProgress,
378 rti1516::RTIinternalError);
381 virtual
void deleteObjectInstance
382 (rti1516::ObjectInstanceHandle theObject,
383 rti1516::VariableLengthData const & theUserSuppliedTag)
384 throw (rti1516::DeletePrivilegeNotHeld,
385 rti1516::ObjectInstanceNotKnown,
386 rti1516::FederateNotExecutionMember,
387 rti1516::SaveInProgress,
388 rti1516::RestoreInProgress,
389 rti1516::RTIinternalError);
391 virtual rti1516::MessageRetractionHandle deleteObjectInstance
392 (rti1516::ObjectInstanceHandle theObject,
393 rti1516::VariableLengthData const & theUserSuppliedTag,
394 rti1516::LogicalTime const & theTime)
395 throw (rti1516::DeletePrivilegeNotHeld,
396 rti1516::ObjectInstanceNotKnown,
397 rti1516::InvalidLogicalTime,
398 rti1516::FederateNotExecutionMember,
399 rti1516::SaveInProgress,
400 rti1516::RestoreInProgress,
401 rti1516::RTIinternalError);
404 virtual
void localDeleteObjectInstance
405 (rti1516::ObjectInstanceHandle theObject)
406 throw (rti1516::ObjectInstanceNotKnown,
407 rti1516::FederateOwnsAttributes,
408 rti1516::OwnershipAcquisitionPending,
409 rti1516::FederateNotExecutionMember,
410 rti1516::SaveInProgress,
411 rti1516::RestoreInProgress,
412 rti1516::RTIinternalError);
415 virtual
void changeAttributeTransportationType
416 (rti1516::ObjectInstanceHandle theObject,
419 throw (rti1516::ObjectInstanceNotKnown,
420 rti1516::AttributeNotDefined,
421 rti1516::AttributeNotOwned,
422 rti1516::FederateNotExecutionMember,
423 rti1516::SaveInProgress,
424 rti1516::RestoreInProgress,
425 rti1516::RTIinternalError);
428 virtual
void changeInteractionTransportationType
429 (rti1516::InteractionClassHandle theClass,
431 throw (rti1516::InteractionClassNotDefined,
432 rti1516::InteractionClassNotPublished,
433 rti1516::FederateNotExecutionMember,
434 rti1516::SaveInProgress,
435 rti1516::RestoreInProgress,
436 rti1516::RTIinternalError);
439 virtual
void requestAttributeValueUpdate
440 (rti1516::ObjectInstanceHandle theObject,
442 rti1516::VariableLengthData const & theUserSuppliedTag)
443 throw (rti1516::ObjectInstanceNotKnown,
444 rti1516::AttributeNotDefined,
445 rti1516::FederateNotExecutionMember,
446 rti1516::SaveInProgress,
447 rti1516::RestoreInProgress,
448 rti1516::RTIinternalError);
450 virtual
void requestAttributeValueUpdate
451 (rti1516::ObjectClassHandle theClass,
453 rti1516::VariableLengthData const & theUserSuppliedTag)
454 throw (rti1516::ObjectClassNotDefined,
455 rti1516::AttributeNotDefined,
456 rti1516::FederateNotExecutionMember,
457 rti1516::SaveInProgress,
458 rti1516::RestoreInProgress,
459 rti1516::RTIinternalError);
465 virtual
void unconditionalAttributeOwnershipDivestiture
466 (rti1516::ObjectInstanceHandle theObject,
468 throw (rti1516::ObjectInstanceNotKnown,
469 rti1516::AttributeNotDefined,
470 rti1516::AttributeNotOwned,
471 rti1516::FederateNotExecutionMember,
472 rti1516::SaveInProgress,
473 rti1516::RestoreInProgress,
474 rti1516::RTIinternalError);
477 virtual
void negotiatedAttributeOwnershipDivestiture
478 (rti1516::ObjectInstanceHandle theObject,
480 rti1516::VariableLengthData const & theUserSuppliedTag)
481 throw (rti1516::ObjectInstanceNotKnown,
482 rti1516::AttributeNotDefined,
483 rti1516::AttributeNotOwned,
484 rti1516::AttributeAlreadyBeingDivested,
485 rti1516::FederateNotExecutionMember,
486 rti1516::SaveInProgress,
487 rti1516::RestoreInProgress,
488 rti1516::RTIinternalError);
491 virtual
void confirmDivestiture
492 (rti1516::ObjectInstanceHandle theObject,
494 rti1516::VariableLengthData const & theUserSuppliedTag)
495 throw (rti1516::ObjectInstanceNotKnown,
496 rti1516::AttributeNotDefined,
497 rti1516::AttributeNotOwned,
498 rti1516::AttributeDivestitureWasNotRequested,
499 rti1516::NoAcquisitionPending,
500 rti1516::FederateNotExecutionMember,
501 rti1516::SaveInProgress,
502 rti1516::RestoreInProgress,
503 rti1516::RTIinternalError);
506 virtual
void attributeOwnershipAcquisition
507 (rti1516::ObjectInstanceHandle theObject,
509 rti1516::VariableLengthData const & theUserSuppliedTag)
510 throw (rti1516::ObjectInstanceNotKnown,
511 rti1516::ObjectClassNotPublished,
512 rti1516::AttributeNotDefined,
513 rti1516::AttributeNotPublished,
514 rti1516::FederateOwnsAttributes,
515 rti1516::FederateNotExecutionMember,
516 rti1516::SaveInProgress,
517 rti1516::RestoreInProgress,
518 rti1516::RTIinternalError);
521 virtual
void attributeOwnershipAcquisitionIfAvailable
522 (rti1516::ObjectInstanceHandle theObject,
524 throw (rti1516::ObjectInstanceNotKnown,
525 rti1516::ObjectClassNotPublished,
526 rti1516::AttributeNotDefined,
527 rti1516::AttributeNotPublished,
528 rti1516::FederateOwnsAttributes,
529 rti1516::AttributeAlreadyBeingAcquired,
530 rti1516::FederateNotExecutionMember,
531 rti1516::SaveInProgress,
532 rti1516::RestoreInProgress,
533 rti1516::RTIinternalError);
536 virtual
void attributeOwnershipDivestitureIfWanted
537 (rti1516::ObjectInstanceHandle theObject,
540 throw (rti1516::ObjectInstanceNotKnown,
541 rti1516::AttributeNotDefined,
542 rti1516::AttributeNotOwned,
543 rti1516::FederateNotExecutionMember,
544 rti1516::SaveInProgress,
545 rti1516::RestoreInProgress,
546 rti1516::RTIinternalError);
549 virtual
void cancelNegotiatedAttributeOwnershipDivestiture
550 (rti1516::ObjectInstanceHandle theObject,
552 throw (rti1516::ObjectInstanceNotKnown,
553 rti1516::AttributeNotDefined,
554 rti1516::AttributeNotOwned,
555 rti1516::AttributeDivestitureWasNotRequested,
556 rti1516::FederateNotExecutionMember,
557 rti1516::SaveInProgress,
558 rti1516::RestoreInProgress,
559 rti1516::RTIinternalError);
562 virtual
void cancelAttributeOwnershipAcquisition
563 (rti1516::ObjectInstanceHandle theObject,
565 throw (rti1516::ObjectInstanceNotKnown,
566 rti1516::AttributeNotDefined,
567 rti1516::AttributeAlreadyOwned,
568 rti1516::AttributeAcquisitionWasNotRequested,
569 rti1516::FederateNotExecutionMember,
570 rti1516::SaveInProgress,
571 rti1516::RestoreInProgress,
572 rti1516::RTIinternalError);
575 virtual
void queryAttributeOwnership
576 (rti1516::ObjectInstanceHandle theObject,
577 rti1516::AttributeHandle theAttribute)
578 throw (rti1516::ObjectInstanceNotKnown,
579 rti1516::AttributeNotDefined,
580 rti1516::FederateNotExecutionMember,
581 rti1516::SaveInProgress,
582 rti1516::RestoreInProgress,
583 rti1516::RTIinternalError);
586 virtual
bool isAttributeOwnedByFederate
587 (rti1516::ObjectInstanceHandle theObject,
588 rti1516::AttributeHandle theAttribute)
589 throw (rti1516::ObjectInstanceNotKnown,
590 rti1516::AttributeNotDefined,
591 rti1516::FederateNotExecutionMember,
592 rti1516::SaveInProgress,
593 rti1516::RestoreInProgress,
594 rti1516::RTIinternalError);
601 virtual
void enableTimeRegulation
602 (rti1516::LogicalTimeInterval const & theLookahead)
603 throw (rti1516::TimeRegulationAlreadyEnabled,
604 rti1516::InvalidLookahead,
605 rti1516::InTimeAdvancingState,
606 rti1516::RequestForTimeRegulationPending,
607 rti1516::FederateNotExecutionMember,
608 rti1516::SaveInProgress,
609 rti1516::RestoreInProgress,
610 rti1516::RTIinternalError);
613 virtual
void disableTimeRegulation ()
614 throw (rti1516::TimeRegulationIsNotEnabled,
615 rti1516::FederateNotExecutionMember,
616 rti1516::SaveInProgress,
617 rti1516::RestoreInProgress,
618 rti1516::RTIinternalError);
621 virtual
void enableTimeConstrained ()
622 throw (rti1516::TimeConstrainedAlreadyEnabled,
623 rti1516::InTimeAdvancingState,
624 rti1516::RequestForTimeConstrainedPending,
625 rti1516::FederateNotExecutionMember,
626 rti1516::SaveInProgress,
627 rti1516::RestoreInProgress,
628 rti1516::RTIinternalError);
631 virtual
void disableTimeConstrained ()
632 throw (rti1516::TimeConstrainedIsNotEnabled,
633 rti1516::FederateNotExecutionMember,
634 rti1516::SaveInProgress,
635 rti1516::RestoreInProgress,
636 rti1516::RTIinternalError);
639 virtual
void timeAdvanceRequest
640 (rti1516::LogicalTime const & theTime)
641 throw (rti1516::InvalidLogicalTime,
642 rti1516::LogicalTimeAlreadyPassed,
643 rti1516::InTimeAdvancingState,
644 rti1516::RequestForTimeRegulationPending,
645 rti1516::RequestForTimeConstrainedPending,
646 rti1516::FederateNotExecutionMember,
647 rti1516::SaveInProgress,
648 rti1516::RestoreInProgress,
649 rti1516::RTIinternalError);
652 virtual
void timeAdvanceRequestAvailable
653 (rti1516::LogicalTime const & theTime)
654 throw (rti1516::InvalidLogicalTime,
655 rti1516::LogicalTimeAlreadyPassed,
656 rti1516::InTimeAdvancingState,
657 rti1516::RequestForTimeRegulationPending,
658 rti1516::RequestForTimeConstrainedPending,
659 rti1516::FederateNotExecutionMember,
660 rti1516::SaveInProgress,
661 rti1516::RestoreInProgress,
662 rti1516::RTIinternalError);
665 virtual
void nextMessageRequest
666 (rti1516::LogicalTime const & theTime)
667 throw (rti1516::InvalidLogicalTime,
668 rti1516::LogicalTimeAlreadyPassed,
669 rti1516::InTimeAdvancingState,
670 rti1516::RequestForTimeRegulationPending,
671 rti1516::RequestForTimeConstrainedPending,
672 rti1516::FederateNotExecutionMember,
673 rti1516::SaveInProgress,
674 rti1516::RestoreInProgress,
675 rti1516::RTIinternalError);
678 virtual
void nextMessageRequestAvailable
679 (rti1516::LogicalTime const & theTime)
680 throw (rti1516::InvalidLogicalTime,
681 rti1516::LogicalTimeAlreadyPassed,
682 rti1516::InTimeAdvancingState,
683 rti1516::RequestForTimeRegulationPending,
684 rti1516::RequestForTimeConstrainedPending,
685 rti1516::FederateNotExecutionMember,
686 rti1516::SaveInProgress,
687 rti1516::RestoreInProgress,
688 rti1516::RTIinternalError);
691 virtual
void flushQueueRequest
692 (rti1516::LogicalTime const & theTime)
693 throw (rti1516::InvalidLogicalTime,
694 rti1516::LogicalTimeAlreadyPassed,
695 rti1516::InTimeAdvancingState,
696 rti1516::RequestForTimeRegulationPending,
697 rti1516::RequestForTimeConstrainedPending,
698 rti1516::FederateNotExecutionMember,
699 rti1516::SaveInProgress,
700 rti1516::RestoreInProgress,
701 rti1516::RTIinternalError);
704 virtual
void enableAsynchronousDelivery ()
705 throw (rti1516::AsynchronousDeliveryAlreadyEnabled,
706 rti1516::FederateNotExecutionMember,
707 rti1516::SaveInProgress,
708 rti1516::RestoreInProgress,
709 rti1516::RTIinternalError);
712 virtual
void disableAsynchronousDelivery ()
713 throw (rti1516::AsynchronousDeliveryAlreadyDisabled,
714 rti1516::FederateNotExecutionMember,
715 rti1516::SaveInProgress,
716 rti1516::RestoreInProgress,
717 rti1516::RTIinternalError);
720 virtual
bool queryGALT (rti1516::LogicalTime & theTime)
721 throw (rti1516::FederateNotExecutionMember,
722 rti1516::SaveInProgress,
723 rti1516::RestoreInProgress,
724 rti1516::RTIinternalError);
727 virtual
void queryLogicalTime (rti1516::LogicalTime & theTime)
728 throw (rti1516::FederateNotExecutionMember,
729 rti1516::SaveInProgress,
730 rti1516::RestoreInProgress,
731 rti1516::RTIinternalError);
734 virtual
bool queryLITS (rti1516::LogicalTime & theTime)
735 throw (rti1516::FederateNotExecutionMember,
736 rti1516::SaveInProgress,
737 rti1516::RestoreInProgress,
738 rti1516::RTIinternalError);
741 virtual
void modifyLookahead
742 (rti1516::LogicalTimeInterval const & theLookahead)
743 throw (rti1516::TimeRegulationIsNotEnabled,
744 rti1516::InvalidLookahead,
745 rti1516::InTimeAdvancingState,
746 rti1516::FederateNotExecutionMember,
747 rti1516::SaveInProgress,
748 rti1516::RestoreInProgress,
749 rti1516::RTIinternalError);
752 virtual
void queryLookahead (rti1516::LogicalTimeInterval & interval)
753 throw (rti1516::TimeRegulationIsNotEnabled,
754 rti1516::FederateNotExecutionMember,
755 rti1516::SaveInProgress,
756 rti1516::RestoreInProgress,
757 rti1516::RTIinternalError);
761 (rti1516::MessageRetractionHandle theHandle)
762 throw (rti1516::InvalidRetractionHandle,
763 rti1516::TimeRegulationIsNotEnabled,
764 rti1516::MessageCanNoLongerBeRetracted,
765 rti1516::FederateNotExecutionMember,
766 rti1516::SaveInProgress,
767 rti1516::RestoreInProgress,
768 rti1516::RTIinternalError);
771 virtual
void changeAttributeOrderType
772 (rti1516::ObjectInstanceHandle theObject,
775 throw (rti1516::ObjectInstanceNotKnown,
776 rti1516::AttributeNotDefined,
777 rti1516::AttributeNotOwned,
778 rti1516::FederateNotExecutionMember,
779 rti1516::SaveInProgress,
780 rti1516::RestoreInProgress,
781 rti1516::RTIinternalError);
784 virtual
void changeInteractionOrderType
785 (rti1516::InteractionClassHandle theClass,
787 throw (rti1516::InteractionClassNotDefined,
788 rti1516::InteractionClassNotPublished,
789 rti1516::FederateNotExecutionMember,
790 rti1516::SaveInProgress,
791 rti1516::RestoreInProgress,
792 rti1516::RTIinternalError);
799 virtual rti1516::RegionHandle createRegion
801 throw (rti1516::InvalidDimensionHandle,
802 rti1516::FederateNotExecutionMember,
803 rti1516::SaveInProgress,
804 rti1516::RestoreInProgress,
805 rti1516::RTIinternalError);
808 virtual
void commitRegionModifications
810 throw (rti1516::InvalidRegion,
811 rti1516::RegionNotCreatedByThisFederate,
812 rti1516::FederateNotExecutionMember,
813 rti1516::SaveInProgress,
814 rti1516::RestoreInProgress,
815 rti1516::RTIinternalError);
818 virtual
void deleteRegion
819 (rti1516::RegionHandle theRegion)
820 throw (rti1516::InvalidRegion,
821 rti1516::RegionNotCreatedByThisFederate,
822 rti1516::RegionInUseForUpdateOrSubscription,
823 rti1516::FederateNotExecutionMember,
824 rti1516::SaveInProgress,
825 rti1516::RestoreInProgress,
826 rti1516::RTIinternalError);
829 virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
830 (rti1516::ObjectClassHandle theClass,
832 theAttributeHandleSetRegionHandleSetPairVector)
833 throw (rti1516::ObjectClassNotDefined,
834 rti1516::ObjectClassNotPublished,
835 rti1516::AttributeNotDefined,
836 rti1516::AttributeNotPublished,
837 rti1516::InvalidRegion,
838 rti1516::RegionNotCreatedByThisFederate,
839 rti1516::InvalidRegionContext,
840 rti1516::FederateNotExecutionMember,
841 rti1516::SaveInProgress,
842 rti1516::RestoreInProgress,
843 rti1516::RTIinternalError);
845 virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
846 (rti1516::ObjectClassHandle theClass,
848 theAttributeHandleSetRegionHandleSetPairVector,
849 std::wstring const & theObjectInstanceName)
850 throw (rti1516::ObjectClassNotDefined,
851 rti1516::ObjectClassNotPublished,
852 rti1516::AttributeNotDefined,
853 rti1516::AttributeNotPublished,
854 rti1516::InvalidRegion,
855 rti1516::RegionNotCreatedByThisFederate,
856 rti1516::InvalidRegionContext,
857 rti1516::ObjectInstanceNameNotReserved,
858 rti1516::ObjectInstanceNameInUse,
859 rti1516::FederateNotExecutionMember,
860 rti1516::SaveInProgress,
861 rti1516::RestoreInProgress,
862 rti1516::RTIinternalError);
865 virtual
void associateRegionsForUpdates
866 (rti1516::ObjectInstanceHandle theObject,
868 theAttributeHandleSetRegionHandleSetPairVector)
869 throw (rti1516::ObjectInstanceNotKnown,
870 rti1516::AttributeNotDefined,
871 rti1516::InvalidRegion,
872 rti1516::RegionNotCreatedByThisFederate,
873 rti1516::InvalidRegionContext,
874 rti1516::FederateNotExecutionMember,
875 rti1516::SaveInProgress,
876 rti1516::RestoreInProgress,
877 rti1516::RTIinternalError);
880 virtual
void unassociateRegionsForUpdates
881 (rti1516::ObjectInstanceHandle theObject,
883 theAttributeHandleSetRegionHandleSetPairVector)
884 throw (rti1516::ObjectInstanceNotKnown,
885 rti1516::AttributeNotDefined,
886 rti1516::InvalidRegion,
887 rti1516::RegionNotCreatedByThisFederate,
888 rti1516::FederateNotExecutionMember,
889 rti1516::SaveInProgress,
890 rti1516::RestoreInProgress,
891 rti1516::RTIinternalError);
894 virtual
void subscribeObjectClassAttributesWithRegions
895 (rti1516::ObjectClassHandle theClass,
897 theAttributeHandleSetRegionHandleSetPairVector,
899 throw (rti1516::ObjectClassNotDefined,
900 rti1516::AttributeNotDefined,
901 rti1516::InvalidRegion,
902 rti1516::RegionNotCreatedByThisFederate,
903 rti1516::InvalidRegionContext,
904 rti1516::FederateNotExecutionMember,
905 rti1516::SaveInProgress,
906 rti1516::RestoreInProgress,
907 rti1516::RTIinternalError);
910 virtual
void unsubscribeObjectClassAttributesWithRegions
911 (rti1516::ObjectClassHandle theClass,
913 theAttributeHandleSetRegionHandleSetPairVector)
914 throw (rti1516::ObjectClassNotDefined,
915 rti1516::AttributeNotDefined,
916 rti1516::InvalidRegion,
917 rti1516::RegionNotCreatedByThisFederate,
918 rti1516::FederateNotExecutionMember,
919 rti1516::SaveInProgress,
920 rti1516::RestoreInProgress,
921 rti1516::RTIinternalError);
924 virtual
void subscribeInteractionClassWithRegions
925 (rti1516::InteractionClassHandle theClass,
928 throw (rti1516::InteractionClassNotDefined,
929 rti1516::InvalidRegion,
930 rti1516::RegionNotCreatedByThisFederate,
931 rti1516::InvalidRegionContext,
932 rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
933 rti1516::FederateNotExecutionMember,
934 rti1516::SaveInProgress,
935 rti1516::RestoreInProgress,
936 rti1516::RTIinternalError);
939 virtual
void unsubscribeInteractionClassWithRegions
940 (rti1516::InteractionClassHandle theClass,
942 throw (rti1516::InteractionClassNotDefined,
943 rti1516::InvalidRegion,
944 rti1516::RegionNotCreatedByThisFederate,
945 rti1516::FederateNotExecutionMember,
946 rti1516::SaveInProgress,
947 rti1516::RestoreInProgress,
948 rti1516::RTIinternalError);
951 virtual
void sendInteractionWithRegions
952 (rti1516::InteractionClassHandle theInteraction,
955 rti1516::VariableLengthData const & theUserSuppliedTag)
956 throw (rti1516::InteractionClassNotDefined,
957 rti1516::InteractionClassNotPublished,
958 rti1516::InteractionParameterNotDefined,
959 rti1516::InvalidRegion,
960 rti1516::RegionNotCreatedByThisFederate,
961 rti1516::InvalidRegionContext,
962 rti1516::FederateNotExecutionMember,
963 rti1516::SaveInProgress,
964 rti1516::RestoreInProgress,
965 rti1516::RTIinternalError);
967 virtual rti1516::MessageRetractionHandle sendInteractionWithRegions
968 (rti1516::InteractionClassHandle theInteraction,
971 rti1516::VariableLengthData const & theUserSuppliedTag,
972 rti1516::LogicalTime const & theTime)
973 throw (rti1516::InteractionClassNotDefined,
974 rti1516::InteractionClassNotPublished,
975 rti1516::InteractionParameterNotDefined,
976 rti1516::InvalidRegion,
977 rti1516::RegionNotCreatedByThisFederate,
978 rti1516::InvalidRegionContext,
979 rti1516::InvalidLogicalTime,
980 rti1516::FederateNotExecutionMember,
981 rti1516::SaveInProgress,
982 rti1516::RestoreInProgress,
983 rti1516::RTIinternalError);
986 virtual
void requestAttributeValueUpdateWithRegions
987 (rti1516::ObjectClassHandle theClass,
989 rti1516::VariableLengthData const & theUserSuppliedTag)
990 throw (rti1516::ObjectClassNotDefined,
991 rti1516::AttributeNotDefined,
992 rti1516::InvalidRegion,
993 rti1516::RegionNotCreatedByThisFederate,
994 rti1516::InvalidRegionContext,
995 rti1516::FederateNotExecutionMember,
996 rti1516::SaveInProgress,
997 rti1516::RestoreInProgress,
998 rti1516::RTIinternalError);
1005 virtual rti1516::ObjectClassHandle getObjectClassHandle
1006 (std::wstring const & theName)
1007 throw (rti1516::NameNotFound,
1008 rti1516::FederateNotExecutionMember,
1009 rti1516::RTIinternalError);
1012 virtual std::wstring getObjectClassName
1013 (rti1516::ObjectClassHandle theHandle)
1014 throw (rti1516::InvalidObjectClassHandle,
1015 rti1516::FederateNotExecutionMember,
1016 rti1516::RTIinternalError);
1019 virtual rti1516::AttributeHandle getAttributeHandle
1020 (rti1516::ObjectClassHandle whichClass,
1021 std::wstring const & theAttributeName)
1022 throw (rti1516::InvalidObjectClassHandle,
1023 rti1516::NameNotFound,
1024 rti1516::FederateNotExecutionMember,
1025 rti1516::RTIinternalError);
1028 virtual std::wstring getAttributeName
1029 (rti1516::ObjectClassHandle whichClass,
1030 rti1516::AttributeHandle theHandle)
1031 throw (rti1516::InvalidObjectClassHandle,
1032 rti1516::InvalidAttributeHandle,
1033 rti1516::AttributeNotDefined,
1034 rti1516::FederateNotExecutionMember,
1035 rti1516::RTIinternalError);
1038 virtual rti1516::InteractionClassHandle getInteractionClassHandle
1039 (std::wstring const & theName)
1040 throw (rti1516::NameNotFound,
1041 rti1516::FederateNotExecutionMember,
1042 rti1516::RTIinternalError);
1045 virtual std::wstring getInteractionClassName
1046 (rti1516::InteractionClassHandle theHandle)
1047 throw (rti1516::InvalidInteractionClassHandle,
1048 rti1516::FederateNotExecutionMember,
1049 rti1516::RTIinternalError);
1052 virtual rti1516::ParameterHandle getParameterHandle
1053 (rti1516::InteractionClassHandle whichClass,
1054 std::wstring const & theName)
1055 throw (rti1516::InvalidInteractionClassHandle,
1056 rti1516::NameNotFound,
1057 rti1516::FederateNotExecutionMember,
1058 rti1516::RTIinternalError);
1061 virtual std::wstring getParameterName
1062 (rti1516::InteractionClassHandle whichClass,
1063 rti1516::ParameterHandle theHandle)
1064 throw (rti1516::InvalidInteractionClassHandle,
1065 rti1516::InvalidParameterHandle,
1066 rti1516::InteractionParameterNotDefined,
1067 rti1516::FederateNotExecutionMember,
1068 rti1516::RTIinternalError);
1071 virtual rti1516::ObjectInstanceHandle getObjectInstanceHandle
1072 (std::wstring const & theName)
1073 throw (rti1516::ObjectInstanceNotKnown,
1074 rti1516::FederateNotExecutionMember,
1075 rti1516::RTIinternalError);
1078 virtual std::wstring getObjectInstanceName
1079 (rti1516::ObjectInstanceHandle theHandle)
1080 throw (rti1516::ObjectInstanceNotKnown,
1081 rti1516::FederateNotExecutionMember,
1082 rti1516::RTIinternalError);
1085 virtual rti1516::DimensionHandle getDimensionHandle
1086 (std::wstring const & theName)
1087 throw (rti1516::NameNotFound,
1088 rti1516::FederateNotExecutionMember,
1089 rti1516::RTIinternalError);
1092 virtual std::wstring getDimensionName
1093 (rti1516::DimensionHandle theHandle)
1094 throw (rti1516::InvalidDimensionHandle,
1095 rti1516::FederateNotExecutionMember,
1096 rti1516::RTIinternalError);
1099 virtual
unsigned long getDimensionUpperBound
1100 (rti1516::DimensionHandle theHandle)
1101 throw (rti1516::InvalidDimensionHandle,
1102 rti1516::FederateNotExecutionMember,
1103 rti1516::RTIinternalError);
1107 (rti1516::ObjectClassHandle theClass,
1108 rti1516::AttributeHandle theHandle)
1109 throw (rti1516::InvalidObjectClassHandle,
1110 rti1516::InvalidAttributeHandle,
1111 rti1516::AttributeNotDefined,
1112 rti1516::FederateNotExecutionMember,
1113 rti1516::RTIinternalError);
1116 virtual rti1516::ObjectClassHandle getKnownObjectClassHandle
1117 (rti1516::ObjectInstanceHandle theObject)
1118 throw (rti1516::ObjectInstanceNotKnown,
1119 rti1516::FederateNotExecutionMember,
1120 rti1516::RTIinternalError);
1124 (rti1516::InteractionClassHandle theClass)
1125 throw (rti1516::InvalidInteractionClassHandle,
1126 rti1516::FederateNotExecutionMember,
1127 rti1516::RTIinternalError);
1131 (std::wstring const & transportationName)
1132 throw (rti1516::InvalidTransportationName,
1133 rti1516::FederateNotExecutionMember,
1134 rti1516::RTIinternalError);
1137 virtual std::wstring getTransportationName
1139 throw (rti1516::InvalidTransportationType,
1140 rti1516::FederateNotExecutionMember,
1141 rti1516::RTIinternalError);
1145 (std::wstring const & orderName)
1146 throw (rti1516::InvalidOrderName,
1147 rti1516::FederateNotExecutionMember,
1148 rti1516::RTIinternalError);
1151 virtual std::wstring getOrderName
1153 throw (rti1516::InvalidOrderType,
1154 rti1516::FederateNotExecutionMember,
1155 rti1516::RTIinternalError);
1158 virtual
void enableObjectClassRelevanceAdvisorySwitch ()
1159 throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOn,
1160 rti1516::FederateNotExecutionMember,
1161 rti1516::SaveInProgress,
1162 rti1516::RestoreInProgress,
1163 rti1516::RTIinternalError);
1166 virtual
void disableObjectClassRelevanceAdvisorySwitch ()
1167 throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOff,
1168 rti1516::FederateNotExecutionMember,
1169 rti1516::SaveInProgress,
1170 rti1516::RestoreInProgress,
1171 rti1516::RTIinternalError);
1174 virtual
void enableAttributeRelevanceAdvisorySwitch ()
1175 throw (rti1516::AttributeRelevanceAdvisorySwitchIsOn,
1176 rti1516::FederateNotExecutionMember,
1177 rti1516::SaveInProgress,
1178 rti1516::RestoreInProgress,
1179 rti1516::RTIinternalError);
1182 virtual
void disableAttributeRelevanceAdvisorySwitch ()
1183 throw (rti1516::AttributeRelevanceAdvisorySwitchIsOff,
1184 rti1516::FederateNotExecutionMember,
1185 rti1516::SaveInProgress,
1186 rti1516::RestoreInProgress,
1187 rti1516::RTIinternalError);
1190 virtual
void enableAttributeScopeAdvisorySwitch ()
1191 throw (rti1516::AttributeScopeAdvisorySwitchIsOn,
1192 rti1516::FederateNotExecutionMember,
1193 rti1516::SaveInProgress,
1194 rti1516::RestoreInProgress,
1195 rti1516::RTIinternalError);
1198 virtual
void disableAttributeScopeAdvisorySwitch ()
1199 throw (rti1516::AttributeScopeAdvisorySwitchIsOff,
1200 rti1516::FederateNotExecutionMember,
1201 rti1516::SaveInProgress,
1202 rti1516::RestoreInProgress,
1203 rti1516::RTIinternalError);
1206 virtual
void enableInteractionRelevanceAdvisorySwitch ()
1207 throw (rti1516::InteractionRelevanceAdvisorySwitchIsOn,
1208 rti1516::FederateNotExecutionMember,
1209 rti1516::SaveInProgress,
1210 rti1516::RestoreInProgress,
1211 rti1516::RTIinternalError);
1214 virtual
void disableInteractionRelevanceAdvisorySwitch ()
1215 throw (rti1516::InteractionRelevanceAdvisorySwitchIsOff,
1216 rti1516::FederateNotExecutionMember,
1217 rti1516::SaveInProgress,
1218 rti1516::RestoreInProgress,
1219 rti1516::RTIinternalError);
1224 (rti1516::RegionHandle theRegionHandle)
1225 throw (rti1516::InvalidRegion,
1226 rti1516::FederateNotExecutionMember,
1227 rti1516::SaveInProgress,
1228 rti1516::RestoreInProgress,
1229 rti1516::RTIinternalError);
1233 rti1516::RangeBounds getRangeBounds
1234 (rti1516::RegionHandle theRegionHandle,
1235 rti1516::DimensionHandle theDimensionHandle)
1236 throw (rti1516::InvalidRegion,
1237 rti1516::RegionDoesNotContainSpecifiedDimension,
1238 rti1516::FederateNotExecutionMember,
1239 rti1516::SaveInProgress,
1240 rti1516::RestoreInProgress,
1241 rti1516::RTIinternalError);
1244 virtual
void setRangeBounds
1245 (rti1516::RegionHandle theRegionHandle,
1246 rti1516::DimensionHandle theDimensionHandle,
1247 rti1516::RangeBounds const & theRangeBounds)
1248 throw (rti1516::InvalidRegion,
1249 rti1516::RegionNotCreatedByThisFederate,
1250 rti1516::RegionDoesNotContainSpecifiedDimension,
1251 rti1516::InvalidRangeBound,
1252 rti1516::FederateNotExecutionMember,
1253 rti1516::SaveInProgress,
1254 rti1516::RestoreInProgress,
1255 rti1516::RTIinternalError);
1258 virtual
unsigned long normalizeFederateHandle
1259 (rti1516::FederateHandle theFederateHandle)
1260 throw (rti1516::FederateNotExecutionMember,
1261 rti1516::InvalidFederateHandle,
1262 rti1516::RTIinternalError);
1265 virtual
unsigned long normalizeServiceGroup
1266 (rti1516::ServiceGroupIndicator theServiceGroup)
1267 throw (rti1516::FederateNotExecutionMember,
1268 rti1516::InvalidServiceGroup,
1269 rti1516::RTIinternalError);
1272 virtual
bool evokeCallback(
double approximateMinimumTimeInSeconds,
1273 bool unlockWhileWaiting=false)
1274 throw (rti1516::FederateNotExecutionMember,
1275 rti1516::RTIinternalError);
1278 virtual
bool evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
1279 double approximateMaximumTimeInSeconds,
1280 bool unlockWhileWaiting=false)
1281 throw (rti1516::FederateNotExecutionMember,
1282 rti1516::RTIinternalError);
1285 virtual
void enableCallbacks ()
1286 throw (rti1516::FederateNotExecutionMember,
1287 rti1516::SaveInProgress,
1288 rti1516::RestoreInProgress,
1289 rti1516::RTIinternalError);
1292 virtual
void disableCallbacks ()
1293 throw (rti1516::FederateNotExecutionMember,
1294 rti1516::SaveInProgress,
1295 rti1516::RestoreInProgress,
1296 rti1516::RTIinternalError);
1298 virtual rti1516::FederateHandle decodeFederateHandle(
1299 rti1516::VariableLengthData const & encodedValue) const;
1301 virtual rti1516::ObjectClassHandle decodeObjectClassHandle(
1302 rti1516::VariableLengthData const & encodedValue) const;
1304 virtual rti1516::InteractionClassHandle decodeInteractionClassHandle(
1305 rti1516::VariableLengthData const & encodedValue) const;
1307 virtual rti1516::ObjectInstanceHandle decodeObjectInstanceHandle(
1308 rti1516::VariableLengthData const & encodedValue) const;
1310 virtual rti1516::AttributeHandle decodeAttributeHandle(
1311 rti1516::VariableLengthData const & encodedValue) const;
1313 virtual rti1516::ParameterHandle decodeParameterHandle(
1314 rti1516::VariableLengthData const & encodedValue) const;
1316 virtual rti1516::DimensionHandle decodeDimensionHandle(
1317 rti1516::VariableLengthData const & encodedValue) const;
1319 virtual rti1516::MessageRetractionHandle decodeMessageRetractionHandle(
1320 rti1516::VariableLengthData const & encodedValue) const;
1322 virtual rti1516::RegionHandle decodeRegionHandle(
1323 rti1516::VariableLengthData const & encodedValue) const;
1329 static DtRtiAmbassadorImplementor* create(rti1516::RTIambassador* topLevelAmbPtr,
1330 const std::vector< std::wstring >& initArgs);
1335 DtNetStatsFedAmbWrapper* myStatisticsFedAmb;
1336 DtString myStatisticsFedAmbName;
1342 MAKRti::DtClock myTimer;
1344 MAKRti::DtTime myStartTime;
1348 inline
void DtNetStatsRtiAmbImpl::recordApiStats(
DtRtiAmbAPIType serviceCallName)
const
1351 myNetStats->
recordApiStats(serviceCallName, myTimer.elapsedRealTime() );
1354 #endif // DtIFSPEC1516
1355 #endif // netStatsRtiAmb1516_h__