MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
serverFederateAmbassador1516_4.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
7 
8 #pragma once
9 
10 #if DtHLA_4
11 
14 
15 #include <vl/vrlFederateAmbassador1516_4.h>
16 
17 namespace MAKTrafficClientServerExConn
18 {
19  class DT_DLL_CSEC DtServerFederateAmbassador : public DtServerFederateAmbassadorBase, public DtVrlFederateAmbassador
20  {
21 
22  public:
23 
25  DtServerFederateAmbassador();
26 
28  virtual ~DtServerFederateAmbassador() noexcept;
29 
30  protected:
31 
33  DtServerFederateAmbassador(const DtServerFederateAmbassador& src);
35  DtServerFederateAmbassador& operator=(const DtServerFederateAmbassador& src);
36 
37  public:
38 
42 
46  virtual void connectionLost(
47  std::wstring const& faultDescription) override;
48 
52  virtual void reportFederationExecutions(
53  FederationExecutionInformationVector const& report) override;
54 
58  virtual void reportFederationExecutionMembers(
59  std::wstring const& federationName,
60  FederationExecutionMemberInformationVector const& report) override;
61 
65  virtual void reportFederationExecutionDoesNotExist(
66  std::wstring const& federationName) override;
67 
71  virtual void federateResigned(
72  std::wstring const& reasonForResignDescription) override;
73 
77  virtual void synchronizationPointRegistrationSucceeded(
78  std::wstring const& synchronizationPointLabel) override;
79 
83  virtual void synchronizationPointRegistrationFailed(
84  std::wstring const& synchronizationPointLabel,
85  SynchronizationPointFailureReason reason) override;
86 
90  virtual void announceSynchronizationPoint(
91  std::wstring const& synchronizationPointLabel,
92  VariableLengthData const& userSuppliedTag) override;
93 
97  virtual void federationSynchronized(
98  std::wstring const& synchronizationPointLabel,
99  FederateHandleSet const& failedToSyncSet) override;
100 
104  virtual void initiateFederateSave(
105  std::wstring const& label) override;
106 
110  virtual void initiateFederateSave(
111  std::wstring const& label,
112  LogicalTime const& time) override;
113 
117  virtual void federationSaved() override;
118 
122  virtual void federationNotSaved(
123  SaveFailureReason reason) override;
124 
128  virtual void federationSaveStatusResponse(
129  FederateHandleSaveStatusPairVector const& response) override;
130 
134  virtual void requestFederationRestoreSucceeded(
135  std::wstring const& label) override;
136 
140  virtual void requestFederationRestoreFailed(
141  std::wstring const& label) override;
142 
146  virtual void federationRestoreBegun() override;
147 
151  virtual void initiateFederateRestore(
152  std::wstring const& label,
153  std::wstring const& federateName,
154  FederateHandle const& postRestoreFederateHandle) override;
155 
159  virtual void federationRestored() override;
160 
164  virtual void federationNotRestored(
165  RestoreFailureReason reason) override;
166 
170  virtual void federationRestoreStatusResponse(
171  FederateRestoreStatusVector const& response) override;
172 
174  // Declaration Management Services //
176 
180  virtual void startRegistrationForObjectClass(
181  ObjectClassHandle const& objectClass) override;
182 
186  virtual void stopRegistrationForObjectClass(
187  ObjectClassHandle const& objectClass) override;
188 
192  virtual void turnInteractionsOn(
193  InteractionClassHandle const& interactionClass) override;
194 
198  virtual void turnInteractionsOff(
199  InteractionClassHandle const& interactionClass) override;
200 
202  // Object Management Services //
204 
208  virtual void objectInstanceNameReservationSucceeded(
209  std::wstring const& objectInstanceName) override;
210 
214  virtual void objectInstanceNameReservationFailed(
215  std::wstring const& objectInstanceName) override;
216 
220  virtual void multipleObjectInstanceNameReservationSucceeded(
221  std::set<std::wstring> const& objectInstanceNames) override;
222 
226  virtual void multipleObjectInstanceNameReservationFailed(
227  std::set<std::wstring> const& objectInstanceNames) override;
228 
229 
233  virtual void discoverObjectInstance(
234  ObjectInstanceHandle const& objectInstance,
235  ObjectClassHandle const& objectClass,
236  std::wstring const& objectInstanceName,
237  FederateHandle const& producingFederate) override;
238 
239  virtual void discoverObjectInstanceSR(
240  unsigned int clientID,
241  RTI::ObjectInstanceHandle theObject,
242  RTI::ObjectClassHandle theObjectClass,
243  std::wstring const& objectInstanceName,
244  RTI::FederateHandle producingFederate);
245 
249  virtual void reflectAttributeValues(
250  ObjectInstanceHandle const& objectInstance,
251  AttributeHandleValueMap const& attributeValues,
252  VariableLengthData const& userSuppliedTag,
253  TransportationTypeHandle const& transportationType,
254  FederateHandle const& producingFederate,
255  RegionHandleSet const* optionalSentRegions) override;
256 
257  virtual void reflectAttributeValuesSR(
258  unsigned int clientID,
259  ObjectInstanceHandle const& objectInstance,
260  AttributeHandleValueMap const& attributeValues,
261  VariableLengthData const& userSuppliedTag,
262  TransportationTypeHandle const& transportationType,
263  FederateHandle const& producingFederate,
264  RegionHandleSet const* optionalSentRegions);
265 
269  virtual void reflectAttributeValues(
270  ObjectInstanceHandle const& objectInstance,
271  AttributeHandleValueMap const& attributeValues,
272  VariableLengthData const& userSuppliedTag,
273  TransportationTypeHandle const& transportationType,
274  FederateHandle const& producingFederate,
275  RegionHandleSet const* optionalSentRegions,
276  LogicalTime const& time,
277  OrderType sentOrderType,
278  OrderType receivedOrderType,
279  MessageRetractionHandle const* optionalRetraction) override;
280 
281  virtual void reflectAttributeValuesSR(
282  unsigned int clientID,
283  ObjectInstanceHandle const& objectInstance,
284  AttributeHandleValueMap const& attributeValues,
285  VariableLengthData const& userSuppliedTag,
286  TransportationTypeHandle const& transportationType,
287  FederateHandle const& producingFederate,
288  RegionHandleSet const* optionalSentRegions,
289  LogicalTime const& time,
290  OrderType sentOrderType,
291  OrderType receivedOrderType,
292  MessageRetractionHandle const* optionalRetraction);
293 
297  virtual void receiveInteraction(
298  InteractionClassHandle const& interactionClass,
299  ParameterHandleValueMap const& parameterValues,
300  VariableLengthData const& userSuppliedTag,
301  TransportationTypeHandle const& transportationType,
302  FederateHandle const& producingFederate,
303  const RegionHandleSet* optionalSentRegions) override;
304 
305  virtual void receiveInteractionSR(
306  unsigned int clientID,
307  InteractionClassHandle const& interactionClass,
308  ParameterHandleValueMap const& parameterValues,
309  VariableLengthData const& userSuppliedTag,
310  TransportationTypeHandle const& transportationType,
311  FederateHandle const& producingFederate,
312  const RegionHandleSet* optionalSentRegions);
313 
317  virtual void receiveInteraction(
318  InteractionClassHandle const& interactionClass,
319  ParameterHandleValueMap const& parameterValues,
320  VariableLengthData const& userSuppliedTag,
321  TransportationTypeHandle const& transportationType,
322  FederateHandle const& producingFederate,
323  RegionHandleSet const* optionalSentRegions,
324  LogicalTime const& time,
325  OrderType sentOrderType,
326  OrderType receivedOrderType,
327  MessageRetractionHandle const* optionalRetraction) override;
328 
329  virtual void receiveInteractionSR(
330  unsigned int clientID,
331  InteractionClassHandle const& interactionClass,
332  ParameterHandleValueMap const& parameterValues,
333  VariableLengthData const& userSuppliedTag,
334  TransportationTypeHandle const& transportationType,
335  FederateHandle const& producingFederate,
336  RegionHandleSet const* optionalSentRegions,
337  LogicalTime const& time,
338  OrderType sentOrderType,
339  OrderType receivedOrderType,
340  MessageRetractionHandle const* optionalRetraction);
341 
345  virtual void receiveDirectedInteraction(
346  InteractionClassHandle const& interactionClass,
347  ObjectInstanceHandle const& objectInstance,
348  ParameterHandleValueMap const& parameterValues,
349  VariableLengthData const& userSuppliedTag,
350  TransportationTypeHandle const& transportationType,
351  FederateHandle const& producingFederate) override;
352 
353  void receiveDirectedInteractionSR(
354  unsigned int clientID,
355  InteractionClassHandle const& interactionClass,
356  ObjectInstanceHandle const& objectInstance,
357  ParameterHandleValueMap const& parameterValues,
358  VariableLengthData const& userSuppliedTag,
359  TransportationTypeHandle const& transportationType,
360  FederateHandle const& producingFederate);
361 
365  virtual void receiveDirectedInteraction(
366  InteractionClassHandle const& interactionClass,
367  ObjectInstanceHandle const& objectInstance,
368  ParameterHandleValueMap const& parameterValues,
369  VariableLengthData const& userSuppliedTag,
370  TransportationTypeHandle const& transportationType,
371  FederateHandle const& producingFederate,
372  LogicalTime const& time,
373  OrderType sentOrderType,
374  OrderType receivedOrderType,
375  MessageRetractionHandle const* optionalRetraction) override;
376 
377  void receiveDirectedInteractionSR(
378  unsigned int clientID,
379  InteractionClassHandle const& interactionClass,
380  ObjectInstanceHandle const& objectInstance,
381  ParameterHandleValueMap const& parameterValues,
382  VariableLengthData const& userSuppliedTag,
383  TransportationTypeHandle const& transportationType,
384  FederateHandle const& producingFederate,
385  LogicalTime const& time,
386  OrderType sentOrderType,
387  OrderType receivedOrderType,
388  MessageRetractionHandle const* optionalRetraction);
389 
393  virtual void removeObjectInstance(
394  ObjectInstanceHandle const& objectInstance,
395  VariableLengthData const& userSuppliedTag,
396  FederateHandle const& producingFederate) override;
397 
398  void removeObjectInstanceSR(
399  unsigned int clientID,
400  ObjectInstanceHandle const& objectInstance,
401  VariableLengthData const& userSuppliedTag,
402  FederateHandle const& producingFederate);
403 
407  virtual void removeObjectInstance(
408  ObjectInstanceHandle const& objectInstance,
409  VariableLengthData const& userSuppliedTag,
410  FederateHandle const& producingFederate,
411  LogicalTime const& time,
412  OrderType sentOrderType,
413  OrderType receivedOrderType,
414  MessageRetractionHandle const* optionalRetraction) override;
415 
416  void removeObjectInstanceSR(
417  unsigned int clientID,
418  ObjectInstanceHandle const& objectInstance,
419  VariableLengthData const& userSuppliedTag,
420  FederateHandle const& producingFederate,
421  LogicalTime const& time,
422  OrderType sentOrderType,
423  OrderType receivedOrderType,
424  MessageRetractionHandle const* optionalRetraction);
425 
429  virtual void attributesInScope(
430  ObjectInstanceHandle const& objectInstance,
431  AttributeHandleSet const& attributes) override;
432 
436  virtual void attributesOutOfScope(
437  ObjectInstanceHandle const& objectInstance,
438  AttributeHandleSet const& attributes) override;
439 
443  virtual void provideAttributeValueUpdate(
444  ObjectInstanceHandle const& objectInstance,
445  AttributeHandleSet const& attributes,
446  VariableLengthData const& userSuppliedTag) override;
447 
451  virtual void turnUpdatesOnForObjectInstance(
452  ObjectInstanceHandle const& objectInstance,
453  AttributeHandleSet const& attributes) override;
454 
458  virtual void turnUpdatesOnForObjectInstance(
459  ObjectInstanceHandle const& objectInstance,
460  AttributeHandleSet const& attributes,
461  std::wstring const& updateRateDesignator) override;
462 
466  virtual void turnUpdatesOffForObjectInstance(
467  ObjectInstanceHandle const& objectInstance,
468  AttributeHandleSet const& attributes) override;
469 
473  virtual void confirmAttributeTransportationTypeChange(
474  ObjectInstanceHandle const& objectInstance,
475  AttributeHandleSet const& attributes,
476  TransportationTypeHandle const& transportationType) override;
477 
481  virtual void reportAttributeTransportationType(
482  ObjectInstanceHandle const& objectInstance,
483  AttributeHandle const& attribute,
484  TransportationTypeHandle const& transportationType) override;
485 
489  virtual void confirmInteractionTransportationTypeChange(
490  InteractionClassHandle const& interactionClass,
491  TransportationTypeHandle const& transportationType) override;
492 
496  virtual void reportInteractionTransportationType(
497  FederateHandle const& federate,
498  InteractionClassHandle const& interactionClass,
499  TransportationTypeHandle const& transportationType) override;
500 
501 
503  // Ownership Management Services //
505 
509  virtual void requestAttributeOwnershipAssumption(
510  ObjectInstanceHandle const& objectInstance,
511  AttributeHandleSet const& offeredAttributes,
512  VariableLengthData const& userSuppliedTag) override;
513 
517  virtual void requestDivestitureConfirmation(
518  ObjectInstanceHandle const& objectInstance,
519  AttributeHandleSet const& releasedAttributes,
520  VariableLengthData const& userSuppliedTag) override;
521 
525  virtual void attributeOwnershipAcquisitionNotification(
526  ObjectInstanceHandle const& objectInstance,
527  AttributeHandleSet const& securedAttributes,
528  VariableLengthData const& userSuppliedTag) override;
529 
533  virtual void attributeOwnershipUnavailable(
534  ObjectInstanceHandle const& objectInstance,
535  AttributeHandleSet const& attributes,
536  VariableLengthData const& userSuppliedTag) override;
537 
541  virtual void requestAttributeOwnershipRelease(
542  ObjectInstanceHandle const& objectInstance,
543  AttributeHandleSet const& candidateAttributes,
544  VariableLengthData const& userSuppliedTag) override;
545 
549  virtual void confirmAttributeOwnershipAcquisitionCancellation(
550  ObjectInstanceHandle const& objectInstance,
551  AttributeHandleSet const& attributes) override;
552 
556  virtual void informAttributeOwnership(
557  ObjectInstanceHandle const& objectInstance,
558  AttributeHandleSet const& attributes,
559  FederateHandle const& owner) override;
560 
564  virtual void attributeIsNotOwned(
565  ObjectInstanceHandle const& objectInstance,
566  AttributeHandleSet const& attributes) override;
567 
571  virtual void attributeIsOwnedByRTI(
572  ObjectInstanceHandle const& objectInstance,
573  AttributeHandleSet const& attributes) override;
574 
576  // Time Management Services //
578 
582  virtual void timeRegulationEnabled(
583  LogicalTime const& time) override;
584 
588  virtual void timeConstrainedEnabled(
589  LogicalTime const& time) override;
590 
594  virtual void flushQueueGrant(
595  LogicalTime const& time, LogicalTime const& optimisticTime) override;
596 
600  virtual void timeAdvanceGrant(
601  LogicalTime const& time) override;
602 
606  virtual void requestRetraction(
607  MessageRetractionHandle const& retraction) override;
608 
609  public:
610 
612  static DtVrlFederateAmbassador* create();
613 
614  protected:
615 
617  virtual std::unique_ptr<RTI::LogicalTime> copyTime(RTI::LogicalTime const& timeValue);
618 
619  };
620 }
621 
622 #endif
#define DT_DLL_CSEC
Definition: clientServerExConnDllDefines.h:17

Document ID: Generated on Thu Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)