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()
43 virtual
bool netStatsEnabled() const;
44 virtual
void setNetStatsEnabled(
bool shouldEnable);
47 virtual
void startTimer();
48 virtual
void startTimer() const;
59 virtual
void createFederationExecution
60 (std::wstring const & federationExecutionName,
61 std::wstring const & fullPathNameToTheFDDfile,
62 std::wstring const & logicalTimeImplementationName = L"")
63 throw (rti1516::FederationExecutionAlreadyExists,
64 rti1516::CouldNotOpenFDD,
65 rti1516::ErrorReadingFDD,
66 rti1516::RTIinternalError);
69 virtual
void destroyFederationExecution
70 (std::wstring const & federationExecutionName)
71 throw (rti1516::FederatesCurrentlyJoined,
72 rti1516::FederationExecutionDoesNotExist,
73 rti1516::RTIinternalError);
76 virtual rti1516::FederateHandle joinFederationExecution
77 (std::wstring const & federateType,
78 std::wstring const & federationExecutionName,
79 rti1516::FederateAmbassador & federateAmbassador,
81 throw (rti1516::FederateAlreadyExecutionMember,
82 rti1516::FederationExecutionDoesNotExist,
83 rti1516::SaveInProgress,
84 rti1516::RestoreInProgress,
85 rti1516::RTIinternalError);
88 virtual
void resignFederationExecution
90 throw (rti1516::OwnershipAcquisitionPending,
91 rti1516::FederateOwnsAttributes,
92 rti1516::FederateNotExecutionMember,
93 rti1516::RTIinternalError);
96 virtual
void registerFederationSynchronizationPoint
97 (std::wstring const & label,
98 rti1516::VariableLengthData const & theUserSuppliedTag)
99 throw (rti1516::FederateNotExecutionMember,
100 rti1516::SaveInProgress,
101 rti1516::RestoreInProgress,
102 rti1516::RTIinternalError);
104 virtual
void registerFederationSynchronizationPoint
105 (std::wstring const & label,
106 rti1516::VariableLengthData const & theUserSuppliedTag,
108 throw (rti1516::FederateNotExecutionMember,
109 rti1516::SaveInProgress,
110 rti1516::RestoreInProgress,
111 rti1516::RTIinternalError);
114 virtual
void synchronizationPointAchieved
115 (std::wstring const & label)
116 throw (rti1516::SynchronizationPointLabelNotAnnounced,
117 rti1516::FederateNotExecutionMember,
118 rti1516::SaveInProgress,
119 rti1516::RestoreInProgress,
120 rti1516::RTIinternalError);
123 virtual
void requestFederationSave
124 (std::wstring const & label)
125 throw (rti1516::FederateNotExecutionMember,
126 rti1516::SaveInProgress,
127 rti1516::RestoreInProgress,
128 rti1516::RTIinternalError);
130 virtual
void requestFederationSave
131 (std::wstring const & label,
132 rti1516::LogicalTime const & theTime)
133 throw (rti1516::LogicalTimeAlreadyPassed,
134 rti1516::InvalidLogicalTime,
135 rti1516::FederateUnableToUseTime,
136 rti1516::FederateNotExecutionMember,
137 rti1516::SaveInProgress,
138 rti1516::RestoreInProgress,
139 rti1516::RTIinternalError);
142 virtual
void federateSaveBegun ()
143 throw (rti1516::SaveNotInitiated,
144 rti1516::FederateNotExecutionMember,
145 rti1516::RestoreInProgress,
146 rti1516::RTIinternalError);
149 virtual
void federateSaveComplete ()
150 throw (rti1516::FederateHasNotBegunSave,
151 rti1516::FederateNotExecutionMember,
152 rti1516::RestoreInProgress,
153 rti1516::RTIinternalError);
155 virtual
void federateSaveNotComplete()
156 throw (rti1516::FederateHasNotBegunSave,
157 rti1516::FederateNotExecutionMember,
158 rti1516::RestoreInProgress,
159 rti1516::RTIinternalError);
162 virtual
void queryFederationSaveStatus ()
163 throw (rti1516::FederateNotExecutionMember,
164 rti1516::RestoreInProgress,
165 rti1516::RTIinternalError);
168 virtual
void requestFederationRestore
169 (std::wstring const & label)
170 throw (rti1516::FederateNotExecutionMember,
171 rti1516::SaveInProgress,
172 rti1516::RestoreInProgress,
173 rti1516::RTIinternalError);
176 virtual
void federateRestoreComplete ()
177 throw (rti1516::RestoreNotRequested,
178 rti1516::FederateNotExecutionMember,
179 rti1516::SaveInProgress,
180 rti1516::RTIinternalError);
182 virtual
void federateRestoreNotComplete ()
183 throw (rti1516::RestoreNotRequested,
184 rti1516::FederateNotExecutionMember,
185 rti1516::SaveInProgress,
186 rti1516::RTIinternalError);
189 virtual
void queryFederationRestoreStatus ()
190 throw (rti1516::FederateNotExecutionMember,
191 rti1516::SaveInProgress,
192 rti1516::RTIinternalError);
199 virtual
void publishObjectClassAttributes
200 (rti1516::ObjectClassHandle theClass,
202 throw (rti1516::ObjectClassNotDefined,
203 rti1516::AttributeNotDefined,
204 rti1516::FederateNotExecutionMember,
205 rti1516::SaveInProgress,
206 rti1516::RestoreInProgress,
207 rti1516::RTIinternalError);
210 virtual
void unpublishObjectClass
211 (rti1516::ObjectClassHandle theClass)
212 throw (rti1516::ObjectClassNotDefined,
213 rti1516::OwnershipAcquisitionPending,
214 rti1516::FederateNotExecutionMember,
215 rti1516::SaveInProgress,
216 rti1516::RestoreInProgress,
217 rti1516::RTIinternalError);
219 virtual
void unpublishObjectClassAttributes
220 (rti1516::ObjectClassHandle theClass,
222 throw (rti1516::ObjectClassNotDefined,
223 rti1516::AttributeNotDefined,
224 rti1516::OwnershipAcquisitionPending,
225 rti1516::FederateNotExecutionMember,
226 rti1516::SaveInProgress,
227 rti1516::RestoreInProgress,
228 rti1516::RTIinternalError);
231 virtual
void publishInteractionClass
232 (rti1516::InteractionClassHandle theInteraction)
233 throw (rti1516::InteractionClassNotDefined,
234 rti1516::FederateNotExecutionMember,
235 rti1516::SaveInProgress,
236 rti1516::RestoreInProgress,
237 rti1516::RTIinternalError);
240 virtual
void unpublishInteractionClass
241 (rti1516::InteractionClassHandle theInteraction)
242 throw (rti1516::InteractionClassNotDefined,
243 rti1516::FederateNotExecutionMember,
244 rti1516::SaveInProgress,
245 rti1516::RestoreInProgress,
246 rti1516::RTIinternalError);
249 virtual
void subscribeObjectClassAttributes
250 (rti1516::ObjectClassHandle theClass,
253 throw (rti1516::ObjectClassNotDefined,
254 rti1516::AttributeNotDefined,
255 rti1516::FederateNotExecutionMember,
256 rti1516::SaveInProgress,
257 rti1516::RestoreInProgress,
258 rti1516::RTIinternalError);
261 virtual
void unsubscribeObjectClass
262 (rti1516::ObjectClassHandle theClass)
263 throw (rti1516::ObjectClassNotDefined,
264 rti1516::FederateNotExecutionMember,
265 rti1516::SaveInProgress,
266 rti1516::RestoreInProgress,
267 rti1516::RTIinternalError);
269 virtual
void unsubscribeObjectClassAttributes
270 (rti1516::ObjectClassHandle theClass,
272 throw (rti1516::ObjectClassNotDefined,
273 rti1516::AttributeNotDefined,
274 rti1516::FederateNotExecutionMember,
275 rti1516::SaveInProgress,
276 rti1516::RestoreInProgress,
277 rti1516::RTIinternalError);
280 virtual
void subscribeInteractionClass
281 (rti1516::InteractionClassHandle theClass,
283 throw (rti1516::InteractionClassNotDefined,
284 rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
285 rti1516::FederateNotExecutionMember,
286 rti1516::SaveInProgress,
287 rti1516::RestoreInProgress,
288 rti1516::RTIinternalError);
291 virtual
void unsubscribeInteractionClass
292 (rti1516::InteractionClassHandle theClass)
293 throw (rti1516::InteractionClassNotDefined,
294 rti1516::FederateNotExecutionMember,
295 rti1516::SaveInProgress,
296 rti1516::RestoreInProgress,
297 rti1516::RTIinternalError);
304 virtual
void reserveObjectInstanceName
305 (std::wstring const & theObjectInstanceName)
306 throw (rti1516::IllegalName,
307 rti1516::FederateNotExecutionMember,
308 rti1516::SaveInProgress,
309 rti1516::RestoreInProgress,
310 rti1516::RTIinternalError);
313 virtual rti1516::ObjectInstanceHandle registerObjectInstance
314 (rti1516::ObjectClassHandle theClass)
315 throw (rti1516::ObjectClassNotDefined,
316 rti1516::ObjectClassNotPublished,
317 rti1516::FederateNotExecutionMember,
318 rti1516::SaveInProgress,
319 rti1516::RestoreInProgress,
320 rti1516::RTIinternalError);
322 virtual rti1516::ObjectInstanceHandle registerObjectInstance
323 (rti1516::ObjectClassHandle theClass,
324 std::wstring const & theObjectInstanceName)
325 throw (rti1516::ObjectClassNotDefined,
326 rti1516::ObjectClassNotPublished,
327 rti1516::ObjectInstanceNameNotReserved,
328 rti1516::ObjectInstanceNameInUse,
329 rti1516::FederateNotExecutionMember,
330 rti1516::SaveInProgress,
331 rti1516::RestoreInProgress,
332 rti1516::RTIinternalError);
335 virtual
void updateAttributeValues
336 (rti1516::ObjectInstanceHandle theObject,
338 rti1516::VariableLengthData const & theUserSuppliedTag)
339 throw (rti1516::ObjectInstanceNotKnown,
340 rti1516::AttributeNotDefined,
341 rti1516::AttributeNotOwned,
342 rti1516::FederateNotExecutionMember,
343 rti1516::SaveInProgress,
344 rti1516::RestoreInProgress,
345 rti1516::RTIinternalError);
347 virtual rti1516::MessageRetractionHandle updateAttributeValues
348 (rti1516::ObjectInstanceHandle theObject,
350 rti1516::VariableLengthData const & theUserSuppliedTag,
351 rti1516::LogicalTime const & theTime)
352 throw (rti1516::ObjectInstanceNotKnown,
353 rti1516::AttributeNotDefined,
354 rti1516::AttributeNotOwned,
355 rti1516::InvalidLogicalTime,
356 rti1516::FederateNotExecutionMember,
357 rti1516::SaveInProgress,
358 rti1516::RestoreInProgress,
359 rti1516::RTIinternalError);
362 virtual
void sendInteraction
363 (rti1516::InteractionClassHandle theInteraction,
365 rti1516::VariableLengthData const & theUserSuppliedTag)
366 throw (rti1516::InteractionClassNotPublished,
367 rti1516::InteractionClassNotDefined,
368 rti1516::InteractionParameterNotDefined,
369 rti1516::FederateNotExecutionMember,
370 rti1516::SaveInProgress,
371 rti1516::RestoreInProgress,
372 rti1516::RTIinternalError);
374 virtual rti1516::MessageRetractionHandle sendInteraction
375 (rti1516::InteractionClassHandle theInteraction,
377 rti1516::VariableLengthData const & theUserSuppliedTag,
378 rti1516::LogicalTime const & theTime)
379 throw (rti1516::InteractionClassNotPublished,
380 rti1516::InteractionClassNotDefined,
381 rti1516::InteractionParameterNotDefined,
382 rti1516::InvalidLogicalTime,
383 rti1516::FederateNotExecutionMember,
384 rti1516::SaveInProgress,
385 rti1516::RestoreInProgress,
386 rti1516::RTIinternalError);
389 virtual
void deleteObjectInstance
390 (rti1516::ObjectInstanceHandle theObject,
391 rti1516::VariableLengthData const & theUserSuppliedTag)
392 throw (rti1516::DeletePrivilegeNotHeld,
393 rti1516::ObjectInstanceNotKnown,
394 rti1516::FederateNotExecutionMember,
395 rti1516::SaveInProgress,
396 rti1516::RestoreInProgress,
397 rti1516::RTIinternalError);
399 virtual rti1516::MessageRetractionHandle deleteObjectInstance
400 (rti1516::ObjectInstanceHandle theObject,
401 rti1516::VariableLengthData const & theUserSuppliedTag,
402 rti1516::LogicalTime const & theTime)
403 throw (rti1516::DeletePrivilegeNotHeld,
404 rti1516::ObjectInstanceNotKnown,
405 rti1516::InvalidLogicalTime,
406 rti1516::FederateNotExecutionMember,
407 rti1516::SaveInProgress,
408 rti1516::RestoreInProgress,
409 rti1516::RTIinternalError);
412 virtual
void localDeleteObjectInstance
413 (rti1516::ObjectInstanceHandle theObject)
414 throw (rti1516::ObjectInstanceNotKnown,
415 rti1516::FederateOwnsAttributes,
416 rti1516::OwnershipAcquisitionPending,
417 rti1516::FederateNotExecutionMember,
418 rti1516::SaveInProgress,
419 rti1516::RestoreInProgress,
420 rti1516::RTIinternalError);
423 virtual
void changeAttributeTransportationType
424 (rti1516::ObjectInstanceHandle theObject,
427 throw (rti1516::ObjectInstanceNotKnown,
428 rti1516::AttributeNotDefined,
429 rti1516::AttributeNotOwned,
430 rti1516::FederateNotExecutionMember,
431 rti1516::SaveInProgress,
432 rti1516::RestoreInProgress,
433 rti1516::RTIinternalError);
436 virtual
void changeInteractionTransportationType
437 (rti1516::InteractionClassHandle theClass,
439 throw (rti1516::InteractionClassNotDefined,
440 rti1516::InteractionClassNotPublished,
441 rti1516::FederateNotExecutionMember,
442 rti1516::SaveInProgress,
443 rti1516::RestoreInProgress,
444 rti1516::RTIinternalError);
447 virtual
void requestAttributeValueUpdate
448 (rti1516::ObjectInstanceHandle theObject,
450 rti1516::VariableLengthData const & theUserSuppliedTag)
451 throw (rti1516::ObjectInstanceNotKnown,
452 rti1516::AttributeNotDefined,
453 rti1516::FederateNotExecutionMember,
454 rti1516::SaveInProgress,
455 rti1516::RestoreInProgress,
456 rti1516::RTIinternalError);
458 virtual
void requestAttributeValueUpdate
459 (rti1516::ObjectClassHandle theClass,
461 rti1516::VariableLengthData const & theUserSuppliedTag)
462 throw (rti1516::ObjectClassNotDefined,
463 rti1516::AttributeNotDefined,
464 rti1516::FederateNotExecutionMember,
465 rti1516::SaveInProgress,
466 rti1516::RestoreInProgress,
467 rti1516::RTIinternalError);
473 virtual
void unconditionalAttributeOwnershipDivestiture
474 (rti1516::ObjectInstanceHandle theObject,
476 throw (rti1516::ObjectInstanceNotKnown,
477 rti1516::AttributeNotDefined,
478 rti1516::AttributeNotOwned,
479 rti1516::FederateNotExecutionMember,
480 rti1516::SaveInProgress,
481 rti1516::RestoreInProgress,
482 rti1516::RTIinternalError);
485 virtual
void negotiatedAttributeOwnershipDivestiture
486 (rti1516::ObjectInstanceHandle theObject,
488 rti1516::VariableLengthData const & theUserSuppliedTag)
489 throw (rti1516::ObjectInstanceNotKnown,
490 rti1516::AttributeNotDefined,
491 rti1516::AttributeNotOwned,
492 rti1516::AttributeAlreadyBeingDivested,
493 rti1516::FederateNotExecutionMember,
494 rti1516::SaveInProgress,
495 rti1516::RestoreInProgress,
496 rti1516::RTIinternalError);
499 virtual
void confirmDivestiture
500 (rti1516::ObjectInstanceHandle theObject,
502 rti1516::VariableLengthData const & theUserSuppliedTag)
503 throw (rti1516::ObjectInstanceNotKnown,
504 rti1516::AttributeNotDefined,
505 rti1516::AttributeNotOwned,
506 rti1516::AttributeDivestitureWasNotRequested,
507 rti1516::NoAcquisitionPending,
508 rti1516::FederateNotExecutionMember,
509 rti1516::SaveInProgress,
510 rti1516::RestoreInProgress,
511 rti1516::RTIinternalError);
514 virtual
void attributeOwnershipAcquisition
515 (rti1516::ObjectInstanceHandle theObject,
517 rti1516::VariableLengthData const & theUserSuppliedTag)
518 throw (rti1516::ObjectInstanceNotKnown,
519 rti1516::ObjectClassNotPublished,
520 rti1516::AttributeNotDefined,
521 rti1516::AttributeNotPublished,
522 rti1516::FederateOwnsAttributes,
523 rti1516::FederateNotExecutionMember,
524 rti1516::SaveInProgress,
525 rti1516::RestoreInProgress,
526 rti1516::RTIinternalError);
529 virtual
void attributeOwnershipAcquisitionIfAvailable
530 (rti1516::ObjectInstanceHandle theObject,
532 throw (rti1516::ObjectInstanceNotKnown,
533 rti1516::ObjectClassNotPublished,
534 rti1516::AttributeNotDefined,
535 rti1516::AttributeNotPublished,
536 rti1516::FederateOwnsAttributes,
537 rti1516::AttributeAlreadyBeingAcquired,
538 rti1516::FederateNotExecutionMember,
539 rti1516::SaveInProgress,
540 rti1516::RestoreInProgress,
541 rti1516::RTIinternalError);
544 virtual
void attributeOwnershipDivestitureIfWanted
545 (rti1516::ObjectInstanceHandle theObject,
548 throw (rti1516::ObjectInstanceNotKnown,
549 rti1516::AttributeNotDefined,
550 rti1516::AttributeNotOwned,
551 rti1516::FederateNotExecutionMember,
552 rti1516::SaveInProgress,
553 rti1516::RestoreInProgress,
554 rti1516::RTIinternalError);
557 virtual
void cancelNegotiatedAttributeOwnershipDivestiture
558 (rti1516::ObjectInstanceHandle theObject,
560 throw (rti1516::ObjectInstanceNotKnown,
561 rti1516::AttributeNotDefined,
562 rti1516::AttributeNotOwned,
563 rti1516::AttributeDivestitureWasNotRequested,
564 rti1516::FederateNotExecutionMember,
565 rti1516::SaveInProgress,
566 rti1516::RestoreInProgress,
567 rti1516::RTIinternalError);
570 virtual
void cancelAttributeOwnershipAcquisition
571 (rti1516::ObjectInstanceHandle theObject,
573 throw (rti1516::ObjectInstanceNotKnown,
574 rti1516::AttributeNotDefined,
575 rti1516::AttributeAlreadyOwned,
576 rti1516::AttributeAcquisitionWasNotRequested,
577 rti1516::FederateNotExecutionMember,
578 rti1516::SaveInProgress,
579 rti1516::RestoreInProgress,
580 rti1516::RTIinternalError);
583 virtual
void queryAttributeOwnership
584 (rti1516::ObjectInstanceHandle theObject,
585 rti1516::AttributeHandle theAttribute)
586 throw (rti1516::ObjectInstanceNotKnown,
587 rti1516::AttributeNotDefined,
588 rti1516::FederateNotExecutionMember,
589 rti1516::SaveInProgress,
590 rti1516::RestoreInProgress,
591 rti1516::RTIinternalError);
594 virtual
bool isAttributeOwnedByFederate
595 (rti1516::ObjectInstanceHandle theObject,
596 rti1516::AttributeHandle theAttribute)
597 throw (rti1516::ObjectInstanceNotKnown,
598 rti1516::AttributeNotDefined,
599 rti1516::FederateNotExecutionMember,
600 rti1516::SaveInProgress,
601 rti1516::RestoreInProgress,
602 rti1516::RTIinternalError);
609 virtual
void enableTimeRegulation
610 (rti1516::LogicalTimeInterval const & theLookahead)
611 throw (rti1516::TimeRegulationAlreadyEnabled,
612 rti1516::InvalidLookahead,
613 rti1516::InTimeAdvancingState,
614 rti1516::RequestForTimeRegulationPending,
615 rti1516::FederateNotExecutionMember,
616 rti1516::SaveInProgress,
617 rti1516::RestoreInProgress,
618 rti1516::RTIinternalError);
621 virtual
void disableTimeRegulation ()
622 throw (rti1516::TimeRegulationIsNotEnabled,
623 rti1516::FederateNotExecutionMember,
624 rti1516::SaveInProgress,
625 rti1516::RestoreInProgress,
626 rti1516::RTIinternalError);
629 virtual
void enableTimeConstrained ()
630 throw (rti1516::TimeConstrainedAlreadyEnabled,
631 rti1516::InTimeAdvancingState,
632 rti1516::RequestForTimeConstrainedPending,
633 rti1516::FederateNotExecutionMember,
634 rti1516::SaveInProgress,
635 rti1516::RestoreInProgress,
636 rti1516::RTIinternalError);
639 virtual
void disableTimeConstrained ()
640 throw (rti1516::TimeConstrainedIsNotEnabled,
641 rti1516::FederateNotExecutionMember,
642 rti1516::SaveInProgress,
643 rti1516::RestoreInProgress,
644 rti1516::RTIinternalError);
647 virtual
void timeAdvanceRequest
648 (rti1516::LogicalTime const & theTime)
649 throw (rti1516::InvalidLogicalTime,
650 rti1516::LogicalTimeAlreadyPassed,
651 rti1516::InTimeAdvancingState,
652 rti1516::RequestForTimeRegulationPending,
653 rti1516::RequestForTimeConstrainedPending,
654 rti1516::FederateNotExecutionMember,
655 rti1516::SaveInProgress,
656 rti1516::RestoreInProgress,
657 rti1516::RTIinternalError);
660 virtual
void timeAdvanceRequestAvailable
661 (rti1516::LogicalTime const & theTime)
662 throw (rti1516::InvalidLogicalTime,
663 rti1516::LogicalTimeAlreadyPassed,
664 rti1516::InTimeAdvancingState,
665 rti1516::RequestForTimeRegulationPending,
666 rti1516::RequestForTimeConstrainedPending,
667 rti1516::FederateNotExecutionMember,
668 rti1516::SaveInProgress,
669 rti1516::RestoreInProgress,
670 rti1516::RTIinternalError);
673 virtual
void nextMessageRequest
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 nextMessageRequestAvailable
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 flushQueueRequest
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 enableAsynchronousDelivery ()
713 throw (rti1516::AsynchronousDeliveryAlreadyEnabled,
714 rti1516::FederateNotExecutionMember,
715 rti1516::SaveInProgress,
716 rti1516::RestoreInProgress,
717 rti1516::RTIinternalError);
720 virtual
void disableAsynchronousDelivery ()
721 throw (rti1516::AsynchronousDeliveryAlreadyDisabled,
722 rti1516::FederateNotExecutionMember,
723 rti1516::SaveInProgress,
724 rti1516::RestoreInProgress,
725 rti1516::RTIinternalError);
728 virtual
bool queryGALT (rti1516::LogicalTime & theTime)
729 throw (rti1516::FederateNotExecutionMember,
730 rti1516::SaveInProgress,
731 rti1516::RestoreInProgress,
732 rti1516::RTIinternalError);
735 virtual
void queryLogicalTime (rti1516::LogicalTime & theTime)
736 throw (rti1516::FederateNotExecutionMember,
737 rti1516::SaveInProgress,
738 rti1516::RestoreInProgress,
739 rti1516::RTIinternalError);
742 virtual
bool queryLITS (rti1516::LogicalTime & theTime)
743 throw (rti1516::FederateNotExecutionMember,
744 rti1516::SaveInProgress,
745 rti1516::RestoreInProgress,
746 rti1516::RTIinternalError);
749 virtual
void modifyLookahead
750 (rti1516::LogicalTimeInterval const & theLookahead)
751 throw (rti1516::TimeRegulationIsNotEnabled,
752 rti1516::InvalidLookahead,
753 rti1516::InTimeAdvancingState,
754 rti1516::FederateNotExecutionMember,
755 rti1516::SaveInProgress,
756 rti1516::RestoreInProgress,
757 rti1516::RTIinternalError);
760 virtual
void queryLookahead (rti1516::LogicalTimeInterval & interval)
761 throw (rti1516::TimeRegulationIsNotEnabled,
762 rti1516::FederateNotExecutionMember,
763 rti1516::SaveInProgress,
764 rti1516::RestoreInProgress,
765 rti1516::RTIinternalError);
769 (rti1516::MessageRetractionHandle theHandle)
770 throw (rti1516::InvalidRetractionHandle,
771 rti1516::TimeRegulationIsNotEnabled,
772 rti1516::MessageCanNoLongerBeRetracted,
773 rti1516::FederateNotExecutionMember,
774 rti1516::SaveInProgress,
775 rti1516::RestoreInProgress,
776 rti1516::RTIinternalError);
779 virtual
void changeAttributeOrderType
780 (rti1516::ObjectInstanceHandle theObject,
783 throw (rti1516::ObjectInstanceNotKnown,
784 rti1516::AttributeNotDefined,
785 rti1516::AttributeNotOwned,
786 rti1516::FederateNotExecutionMember,
787 rti1516::SaveInProgress,
788 rti1516::RestoreInProgress,
789 rti1516::RTIinternalError);
792 virtual
void changeInteractionOrderType
793 (rti1516::InteractionClassHandle theClass,
795 throw (rti1516::InteractionClassNotDefined,
796 rti1516::InteractionClassNotPublished,
797 rti1516::FederateNotExecutionMember,
798 rti1516::SaveInProgress,
799 rti1516::RestoreInProgress,
800 rti1516::RTIinternalError);
807 virtual rti1516::RegionHandle createRegion
809 throw (rti1516::InvalidDimensionHandle,
810 rti1516::FederateNotExecutionMember,
811 rti1516::SaveInProgress,
812 rti1516::RestoreInProgress,
813 rti1516::RTIinternalError);
816 virtual
void commitRegionModifications
818 throw (rti1516::InvalidRegion,
819 rti1516::RegionNotCreatedByThisFederate,
820 rti1516::FederateNotExecutionMember,
821 rti1516::SaveInProgress,
822 rti1516::RestoreInProgress,
823 rti1516::RTIinternalError);
826 virtual
void deleteRegion
827 (rti1516::RegionHandle theRegion)
828 throw (rti1516::InvalidRegion,
829 rti1516::RegionNotCreatedByThisFederate,
830 rti1516::RegionInUseForUpdateOrSubscription,
831 rti1516::FederateNotExecutionMember,
832 rti1516::SaveInProgress,
833 rti1516::RestoreInProgress,
834 rti1516::RTIinternalError);
837 virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
838 (rti1516::ObjectClassHandle theClass,
840 theAttributeHandleSetRegionHandleSetPairVector)
841 throw (rti1516::ObjectClassNotDefined,
842 rti1516::ObjectClassNotPublished,
843 rti1516::AttributeNotDefined,
844 rti1516::AttributeNotPublished,
845 rti1516::InvalidRegion,
846 rti1516::RegionNotCreatedByThisFederate,
847 rti1516::InvalidRegionContext,
848 rti1516::FederateNotExecutionMember,
849 rti1516::SaveInProgress,
850 rti1516::RestoreInProgress,
851 rti1516::RTIinternalError);
853 virtual rti1516::ObjectInstanceHandle registerObjectInstanceWithRegions
854 (rti1516::ObjectClassHandle theClass,
856 theAttributeHandleSetRegionHandleSetPairVector,
857 std::wstring const & theObjectInstanceName)
858 throw (rti1516::ObjectClassNotDefined,
859 rti1516::ObjectClassNotPublished,
860 rti1516::AttributeNotDefined,
861 rti1516::AttributeNotPublished,
862 rti1516::InvalidRegion,
863 rti1516::RegionNotCreatedByThisFederate,
864 rti1516::InvalidRegionContext,
865 rti1516::ObjectInstanceNameNotReserved,
866 rti1516::ObjectInstanceNameInUse,
867 rti1516::FederateNotExecutionMember,
868 rti1516::SaveInProgress,
869 rti1516::RestoreInProgress,
870 rti1516::RTIinternalError);
873 virtual
void associateRegionsForUpdates
874 (rti1516::ObjectInstanceHandle theObject,
876 theAttributeHandleSetRegionHandleSetPairVector)
877 throw (rti1516::ObjectInstanceNotKnown,
878 rti1516::AttributeNotDefined,
879 rti1516::InvalidRegion,
880 rti1516::RegionNotCreatedByThisFederate,
881 rti1516::InvalidRegionContext,
882 rti1516::FederateNotExecutionMember,
883 rti1516::SaveInProgress,
884 rti1516::RestoreInProgress,
885 rti1516::RTIinternalError);
888 virtual
void unassociateRegionsForUpdates
889 (rti1516::ObjectInstanceHandle theObject,
891 theAttributeHandleSetRegionHandleSetPairVector)
892 throw (rti1516::ObjectInstanceNotKnown,
893 rti1516::AttributeNotDefined,
894 rti1516::InvalidRegion,
895 rti1516::RegionNotCreatedByThisFederate,
896 rti1516::FederateNotExecutionMember,
897 rti1516::SaveInProgress,
898 rti1516::RestoreInProgress,
899 rti1516::RTIinternalError);
902 virtual
void subscribeObjectClassAttributesWithRegions
903 (rti1516::ObjectClassHandle theClass,
905 theAttributeHandleSetRegionHandleSetPairVector,
907 throw (rti1516::ObjectClassNotDefined,
908 rti1516::AttributeNotDefined,
909 rti1516::InvalidRegion,
910 rti1516::RegionNotCreatedByThisFederate,
911 rti1516::InvalidRegionContext,
912 rti1516::FederateNotExecutionMember,
913 rti1516::SaveInProgress,
914 rti1516::RestoreInProgress,
915 rti1516::RTIinternalError);
918 virtual
void unsubscribeObjectClassAttributesWithRegions
919 (rti1516::ObjectClassHandle theClass,
921 theAttributeHandleSetRegionHandleSetPairVector)
922 throw (rti1516::ObjectClassNotDefined,
923 rti1516::AttributeNotDefined,
924 rti1516::InvalidRegion,
925 rti1516::RegionNotCreatedByThisFederate,
926 rti1516::FederateNotExecutionMember,
927 rti1516::SaveInProgress,
928 rti1516::RestoreInProgress,
929 rti1516::RTIinternalError);
932 virtual
void subscribeInteractionClassWithRegions
933 (rti1516::InteractionClassHandle theClass,
936 throw (rti1516::InteractionClassNotDefined,
937 rti1516::InvalidRegion,
938 rti1516::RegionNotCreatedByThisFederate,
939 rti1516::InvalidRegionContext,
940 rti1516::FederateServiceInvocationsAreBeingReportedViaMOM,
941 rti1516::FederateNotExecutionMember,
942 rti1516::SaveInProgress,
943 rti1516::RestoreInProgress,
944 rti1516::RTIinternalError);
947 virtual
void unsubscribeInteractionClassWithRegions
948 (rti1516::InteractionClassHandle theClass,
950 throw (rti1516::InteractionClassNotDefined,
951 rti1516::InvalidRegion,
952 rti1516::RegionNotCreatedByThisFederate,
953 rti1516::FederateNotExecutionMember,
954 rti1516::SaveInProgress,
955 rti1516::RestoreInProgress,
956 rti1516::RTIinternalError);
959 virtual
void sendInteractionWithRegions
960 (rti1516::InteractionClassHandle theInteraction,
963 rti1516::VariableLengthData const & theUserSuppliedTag)
964 throw (rti1516::InteractionClassNotDefined,
965 rti1516::InteractionClassNotPublished,
966 rti1516::InteractionParameterNotDefined,
967 rti1516::InvalidRegion,
968 rti1516::RegionNotCreatedByThisFederate,
969 rti1516::InvalidRegionContext,
970 rti1516::FederateNotExecutionMember,
971 rti1516::SaveInProgress,
972 rti1516::RestoreInProgress,
973 rti1516::RTIinternalError);
975 virtual rti1516::MessageRetractionHandle sendInteractionWithRegions
976 (rti1516::InteractionClassHandle theInteraction,
979 rti1516::VariableLengthData const & theUserSuppliedTag,
980 rti1516::LogicalTime const & theTime)
981 throw (rti1516::InteractionClassNotDefined,
982 rti1516::InteractionClassNotPublished,
983 rti1516::InteractionParameterNotDefined,
984 rti1516::InvalidRegion,
985 rti1516::RegionNotCreatedByThisFederate,
986 rti1516::InvalidRegionContext,
987 rti1516::InvalidLogicalTime,
988 rti1516::FederateNotExecutionMember,
989 rti1516::SaveInProgress,
990 rti1516::RestoreInProgress,
991 rti1516::RTIinternalError);
994 virtual
void requestAttributeValueUpdateWithRegions
995 (rti1516::ObjectClassHandle theClass,
997 rti1516::VariableLengthData const & theUserSuppliedTag)
998 throw (rti1516::ObjectClassNotDefined,
999 rti1516::AttributeNotDefined,
1000 rti1516::InvalidRegion,
1001 rti1516::RegionNotCreatedByThisFederate,
1002 rti1516::InvalidRegionContext,
1003 rti1516::FederateNotExecutionMember,
1004 rti1516::SaveInProgress,
1005 rti1516::RestoreInProgress,
1006 rti1516::RTIinternalError);
1013 virtual rti1516::ObjectClassHandle getObjectClassHandle
1014 (std::wstring const & theName)
1015 throw (rti1516::NameNotFound,
1016 rti1516::FederateNotExecutionMember,
1017 rti1516::RTIinternalError);
1020 virtual std::wstring getObjectClassName
1021 (rti1516::ObjectClassHandle theHandle)
1022 throw (rti1516::InvalidObjectClassHandle,
1023 rti1516::FederateNotExecutionMember,
1024 rti1516::RTIinternalError);
1027 virtual rti1516::AttributeHandle getAttributeHandle
1028 (rti1516::ObjectClassHandle whichClass,
1029 std::wstring const & theAttributeName)
1030 throw (rti1516::InvalidObjectClassHandle,
1031 rti1516::NameNotFound,
1032 rti1516::FederateNotExecutionMember,
1033 rti1516::RTIinternalError);
1036 virtual std::wstring getAttributeName
1037 (rti1516::ObjectClassHandle whichClass,
1038 rti1516::AttributeHandle theHandle)
1039 throw (rti1516::InvalidObjectClassHandle,
1040 rti1516::InvalidAttributeHandle,
1041 rti1516::AttributeNotDefined,
1042 rti1516::FederateNotExecutionMember,
1043 rti1516::RTIinternalError);
1046 virtual rti1516::InteractionClassHandle getInteractionClassHandle
1047 (std::wstring const & theName)
1048 throw (rti1516::NameNotFound,
1049 rti1516::FederateNotExecutionMember,
1050 rti1516::RTIinternalError);
1053 virtual std::wstring getInteractionClassName
1054 (rti1516::InteractionClassHandle theHandle)
1055 throw (rti1516::InvalidInteractionClassHandle,
1056 rti1516::FederateNotExecutionMember,
1057 rti1516::RTIinternalError);
1060 virtual rti1516::ParameterHandle getParameterHandle
1061 (rti1516::InteractionClassHandle whichClass,
1062 std::wstring const & theName)
1063 throw (rti1516::InvalidInteractionClassHandle,
1064 rti1516::NameNotFound,
1065 rti1516::FederateNotExecutionMember,
1066 rti1516::RTIinternalError);
1069 virtual std::wstring getParameterName
1070 (rti1516::InteractionClassHandle whichClass,
1071 rti1516::ParameterHandle theHandle)
1072 throw (rti1516::InvalidInteractionClassHandle,
1073 rti1516::InvalidParameterHandle,
1074 rti1516::InteractionParameterNotDefined,
1075 rti1516::FederateNotExecutionMember,
1076 rti1516::RTIinternalError);
1079 virtual rti1516::ObjectInstanceHandle getObjectInstanceHandle
1080 (std::wstring const & theName)
1081 throw (rti1516::ObjectInstanceNotKnown,
1082 rti1516::FederateNotExecutionMember,
1083 rti1516::RTIinternalError);
1086 virtual std::wstring getObjectInstanceName
1087 (rti1516::ObjectInstanceHandle theHandle)
1088 throw (rti1516::ObjectInstanceNotKnown,
1089 rti1516::FederateNotExecutionMember,
1090 rti1516::RTIinternalError);
1093 virtual rti1516::DimensionHandle getDimensionHandle
1094 (std::wstring const & theName)
1095 throw (rti1516::NameNotFound,
1096 rti1516::FederateNotExecutionMember,
1097 rti1516::RTIinternalError);
1100 virtual std::wstring getDimensionName
1101 (rti1516::DimensionHandle theHandle)
1102 throw (rti1516::InvalidDimensionHandle,
1103 rti1516::FederateNotExecutionMember,
1104 rti1516::RTIinternalError);
1107 virtual
unsigned long getDimensionUpperBound
1108 (rti1516::DimensionHandle theHandle)
1109 throw (rti1516::InvalidDimensionHandle,
1110 rti1516::FederateNotExecutionMember,
1111 rti1516::RTIinternalError);
1115 (rti1516::ObjectClassHandle theClass,
1116 rti1516::AttributeHandle theHandle)
1117 throw (rti1516::InvalidObjectClassHandle,
1118 rti1516::InvalidAttributeHandle,
1119 rti1516::AttributeNotDefined,
1120 rti1516::FederateNotExecutionMember,
1121 rti1516::RTIinternalError);
1124 virtual rti1516::ObjectClassHandle getKnownObjectClassHandle
1125 (rti1516::ObjectInstanceHandle theObject)
1126 throw (rti1516::ObjectInstanceNotKnown,
1127 rti1516::FederateNotExecutionMember,
1128 rti1516::RTIinternalError);
1132 (rti1516::InteractionClassHandle theClass)
1133 throw (rti1516::InvalidInteractionClassHandle,
1134 rti1516::FederateNotExecutionMember,
1135 rti1516::RTIinternalError);
1139 (std::wstring const & transportationName)
1140 throw (rti1516::InvalidTransportationName,
1141 rti1516::FederateNotExecutionMember,
1142 rti1516::RTIinternalError);
1145 virtual std::wstring getTransportationName
1147 throw (rti1516::InvalidTransportationType,
1148 rti1516::FederateNotExecutionMember,
1149 rti1516::RTIinternalError);
1153 (std::wstring const & orderName)
1154 throw (rti1516::InvalidOrderName,
1155 rti1516::FederateNotExecutionMember,
1156 rti1516::RTIinternalError);
1159 virtual std::wstring getOrderName
1161 throw (rti1516::InvalidOrderType,
1162 rti1516::FederateNotExecutionMember,
1163 rti1516::RTIinternalError);
1166 virtual
void enableObjectClassRelevanceAdvisorySwitch ()
1167 throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOn,
1168 rti1516::FederateNotExecutionMember,
1169 rti1516::SaveInProgress,
1170 rti1516::RestoreInProgress,
1171 rti1516::RTIinternalError);
1174 virtual
void disableObjectClassRelevanceAdvisorySwitch ()
1175 throw (rti1516::ObjectClassRelevanceAdvisorySwitchIsOff,
1176 rti1516::FederateNotExecutionMember,
1177 rti1516::SaveInProgress,
1178 rti1516::RestoreInProgress,
1179 rti1516::RTIinternalError);
1182 virtual
void enableAttributeRelevanceAdvisorySwitch ()
1183 throw (rti1516::AttributeRelevanceAdvisorySwitchIsOn,
1184 rti1516::FederateNotExecutionMember,
1185 rti1516::SaveInProgress,
1186 rti1516::RestoreInProgress,
1187 rti1516::RTIinternalError);
1190 virtual
void disableAttributeRelevanceAdvisorySwitch ()
1191 throw (rti1516::AttributeRelevanceAdvisorySwitchIsOff,
1192 rti1516::FederateNotExecutionMember,
1193 rti1516::SaveInProgress,
1194 rti1516::RestoreInProgress,
1195 rti1516::RTIinternalError);
1198 virtual
void enableAttributeScopeAdvisorySwitch ()
1199 throw (rti1516::AttributeScopeAdvisorySwitchIsOn,
1200 rti1516::FederateNotExecutionMember,
1201 rti1516::SaveInProgress,
1202 rti1516::RestoreInProgress,
1203 rti1516::RTIinternalError);
1206 virtual
void disableAttributeScopeAdvisorySwitch ()
1207 throw (rti1516::AttributeScopeAdvisorySwitchIsOff,
1208 rti1516::FederateNotExecutionMember,
1209 rti1516::SaveInProgress,
1210 rti1516::RestoreInProgress,
1211 rti1516::RTIinternalError);
1214 virtual
void enableInteractionRelevanceAdvisorySwitch ()
1215 throw (rti1516::InteractionRelevanceAdvisorySwitchIsOn,
1216 rti1516::FederateNotExecutionMember,
1217 rti1516::SaveInProgress,
1218 rti1516::RestoreInProgress,
1219 rti1516::RTIinternalError);
1222 virtual
void disableInteractionRelevanceAdvisorySwitch ()
1223 throw (rti1516::InteractionRelevanceAdvisorySwitchIsOff,
1224 rti1516::FederateNotExecutionMember,
1225 rti1516::SaveInProgress,
1226 rti1516::RestoreInProgress,
1227 rti1516::RTIinternalError);
1232 (rti1516::RegionHandle theRegionHandle)
1233 throw (rti1516::InvalidRegion,
1234 rti1516::FederateNotExecutionMember,
1235 rti1516::SaveInProgress,
1236 rti1516::RestoreInProgress,
1237 rti1516::RTIinternalError);
1241 rti1516::RangeBounds getRangeBounds
1242 (rti1516::RegionHandle theRegionHandle,
1243 rti1516::DimensionHandle theDimensionHandle)
1244 throw (rti1516::InvalidRegion,
1245 rti1516::RegionDoesNotContainSpecifiedDimension,
1246 rti1516::FederateNotExecutionMember,
1247 rti1516::SaveInProgress,
1248 rti1516::RestoreInProgress,
1249 rti1516::RTIinternalError);
1252 virtual
void setRangeBounds
1253 (rti1516::RegionHandle theRegionHandle,
1254 rti1516::DimensionHandle theDimensionHandle,
1255 rti1516::RangeBounds const & theRangeBounds)
1256 throw (rti1516::InvalidRegion,
1257 rti1516::RegionNotCreatedByThisFederate,
1258 rti1516::RegionDoesNotContainSpecifiedDimension,
1259 rti1516::InvalidRangeBound,
1260 rti1516::FederateNotExecutionMember,
1261 rti1516::SaveInProgress,
1262 rti1516::RestoreInProgress,
1263 rti1516::RTIinternalError);
1266 virtual
unsigned long normalizeFederateHandle
1267 (rti1516::FederateHandle theFederateHandle)
1268 throw (rti1516::FederateNotExecutionMember,
1269 rti1516::InvalidFederateHandle,
1270 rti1516::RTIinternalError);
1273 virtual
unsigned long normalizeServiceGroup
1274 (rti1516::ServiceGroupIndicator theServiceGroup)
1275 throw (rti1516::FederateNotExecutionMember,
1276 rti1516::InvalidServiceGroup,
1277 rti1516::RTIinternalError);
1280 virtual
bool evokeCallback(
double approximateMinimumTimeInSeconds,
1281 bool unlockWhileWaiting=false)
1282 throw (rti1516::FederateNotExecutionMember,
1283 rti1516::RTIinternalError);
1286 virtual
bool evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
1287 double approximateMaximumTimeInSeconds,
1288 bool unlockWhileWaiting=false)
1289 throw (rti1516::FederateNotExecutionMember,
1290 rti1516::RTIinternalError);
1293 virtual
void enableCallbacks ()
1294 throw (rti1516::FederateNotExecutionMember,
1295 rti1516::SaveInProgress,
1296 rti1516::RestoreInProgress,
1297 rti1516::RTIinternalError);
1300 virtual
void disableCallbacks ()
1301 throw (rti1516::FederateNotExecutionMember,
1302 rti1516::SaveInProgress,
1303 rti1516::RestoreInProgress,
1304 rti1516::RTIinternalError);
1306 virtual rti1516::FederateHandle decodeFederateHandle(
1307 rti1516::VariableLengthData const & encodedValue) const;
1309 virtual rti1516::ObjectClassHandle decodeObjectClassHandle(
1310 rti1516::VariableLengthData const & encodedValue) const;
1312 virtual rti1516::InteractionClassHandle decodeInteractionClassHandle(
1313 rti1516::VariableLengthData const & encodedValue) const;
1315 virtual rti1516::ObjectInstanceHandle decodeObjectInstanceHandle(
1316 rti1516::VariableLengthData const & encodedValue) const;
1318 virtual rti1516::AttributeHandle decodeAttributeHandle(
1319 rti1516::VariableLengthData const & encodedValue) const;
1321 virtual rti1516::ParameterHandle decodeParameterHandle(
1322 rti1516::VariableLengthData const & encodedValue) const;
1324 virtual rti1516::DimensionHandle decodeDimensionHandle(
1325 rti1516::VariableLengthData const & encodedValue) const;
1327 virtual rti1516::MessageRetractionHandle decodeMessageRetractionHandle(
1328 rti1516::VariableLengthData const & encodedValue) const;
1330 virtual rti1516::RegionHandle decodeRegionHandle(
1331 rti1516::VariableLengthData const & encodedValue) const;
1337 static DtRtiAmbassadorImplementor* create(rti1516::RTIambassador* topLevelAmbPtr,
1338 const std::vector< std::wstring >& initArgs);
1343 DtNetStatsFedAmbWrapper* myStatisticsFedAmb;
1344 DtString myStatisticsFedAmbName;
1350 MAKRti::DtClock myTimer;
1352 MAKRti::DtTime myStartTime;
1355 bool myNetStatsEnabled;
1359 #endif // DtIFSPEC1516
1360 #endif // netStatsRtiAmb1516_h__