public override void OnReceiveHLApublishInteractionClass(HLApublishInteractionClassMessage msg) { if (log.IsDebugEnabled) log.Debug("[" + federationName + "] Received HLApublishInteractionClass = " + msg.ToString()); }
/* ///<summary> ///Adjust the time period between updates of the HLAmanager.HLAfederate ///object instance for the specified joined federate. If this interaction ///is never sent, the RTI shall not perform periodic updates. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAsetTiming(HLAsetTimingMessage msg); ///<summary> ///Modify the ownership state of an attribute of an object instance for ///the specified joined federate. If the interaction is used to give ///ownership of the instance attribute to the specified joined federate ///and another joined federate currently owns the instance attribute, ///the owning joined federate shall be divested of ownership of the instance ///attribute before ownership is granted to the specified joined federate. ///No notification of change of ownership of the instance attribute shall ///be provided to either joined federate. In order for ownership of the ///instance attribute to be granted to the specified joined federate, ///the following conditions shall be true: - the specified joined federate ///knows about the object instance - the specified joined federate is ///publishing the corresponding class attribute at the known class of ///the specified object instance at that joined federate - the specified ///instance attribute is not owned by the RTI (i.e., it's not a predefined ///attribute of a MOM object class) If one or more of the above conditions ///are not met, then the interaction shall have no effect and an error ///shall be reported via an interaction of class HLAmanager. HLAfederate.HLAreport. ///HLAreportMOMexception. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAmodifyAttributeState(HLAmodifyAttributeStateMessage msg); ///<summary> ///Specify whether to report service invocations to0 or from the specified ///joined federate via HLAmanager.HLAfederate. HLAreport.HLAreportServiceInvocation ///interactions (enable or disable servicereporting). If the specified ///joined federate is subscribed to the HLAmanager.HLAfederate.HLAreport. ///HLAreportServiceInvocation interaction, all attempts to enable service ///reporting for that joined federate by sending an HLAmanager.HLAfederate.HLAadjust. ///HLAsetServiceReporting interaction with an HLAreportingState parameter ///value of HLAtrue shall fail and be reported via the normal MOM interaction ///failure means. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAsetServiceReporting(HLAsetServiceReportingMessage msg); ///<summary> ///Specify whether the RTI shall report service invocation exceptions ///via HLAmanager.HLAfederate.HLAreport. HLAreportException interactions. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAsetExceptionReporting(HLAsetExceptionReportingMessage msg); ///<summary> ///Request that the RTI send report interactions that contain the publication ///data of a joined federate. It shall result in one interaction of class ///HLAmanager. HLAfederate.HLAreport. HLAreportInteractionPublication ///and one interaction of class HLAmanager.HLAfederate. HLAreport.HLAreportObjectClassPublication ///for each object class published. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestPublications(HLArequestPublicationsMessage msg); ///<summary> ///Request that the RTI send report interactions that contain the subscription ///data of a joined federate. It shall result in one interaction of class ///HLAmanager. HLAfederate.HLAreport. HLAreportInteractionSubscription ///and one interaction of class HLAmanager.HLAfederate. HLAreport.HLAreportObjectClassSubscription ///for each object class published. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestSubscriptions(HLArequestSubscriptionsMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the object ///instances that can be deleted at the joined federate. It shall result ///in one interaction of class HLAmanager.HLAfederate.HLAreport. HLAreportObjectInstancesThatCanBeDeleted. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestObjectInstancesThatCanBeDeleted(HLArequestObjectInstancesThatCanBeDeletedMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the object ///instance updating responsibility of a joined federate. It shall result ///in one interaction of class HLAmanager.HLAfederate.HLAreport. HLAreportObjectInstancesUpdated. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestObjectInstancesUpdated(HLArequestObjectInstancesUpdatedMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the objects ///instances for which a joined federate has had a Reflect Attribute ///Values service invocation. It shall result in one interaction ofclass ///HLAmanager.HLAfederate.HLAreport. HLAreportObjectInstancesReflected. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestObjectInstancesReflected(HLArequestObjectInstancesReflectedMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the number ///of updates that a joined federate has generated. It shall result in ///one interaction of class HLAmanager.HLAfederate.HLAreport. HLAreportUpdatesSent ///for each transportation type that is used to send updates. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestUpdatesSent(HLArequestUpdatesSentMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the number ///of interactions that a joined federate has generated. This count shall ///include interactions sent with region. It shall result in one interaction ///of class HLAmanager.HLAfederate.HLAreport. HLAreportInteractionsSent ///for each transportation type that is used to send interactions. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestInteractionsSent(HLArequestInteractionsSentMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the number ///of reflections that a joined federate has received. It shall result ///in one interaction of class HLAmanager.HLAfederate.HLAreport. HLAreportReflectionsReceived ///for each transportation type used in receiving reflections. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestReflectionsReceived(HLArequestReflectionsReceivedMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the number ///of interactions that a joined federate has received. It shall result ///in one interaction of class HLAmanager.HLAfederate.HLAreport. HLAreportInteractionsReceived ///for each transportation typeused in receiving interactions. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestInteractionsReceived(HLArequestInteractionsReceivedMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains the information ///that a joined federate maintains on a single object instance. It shall ///result in one interaction of class HLAmanager.HLAfederate.HLAreport.HLAreportObjectInstanceInformation. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestObjectInstanceInformation(HLArequestObjectInstanceInformationMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains a list ///of all in-progress federation synchronization points. It shall result ///in one interaction class HLAmanager.HLAfederate.HLAreport. HLAreportSynchronizationPoints. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestSynchronizationPoints(HLArequestSynchronizationPointsMessage msg); ///<summary> ///Request that the RTI send a report interaction that contains a list ///that includes each federate (and its synchronization point status) ///that is associated with a particular synchronization point. It shall ///result in one interaction of class HLAmanager.HLAfederate.HLAreport. ///HLAreportSynchronizationPointStatus. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLArequestSynchronizationPointStatus(HLArequestSynchronizationPointStatusMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestPublications. ///It shall report the attributes of one object class published by the ///joined federate. One of these interactions shall be sent for each ///object class containing attributes that are published by the joined ///federate. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportObjectClassPublication(HLAreportObjectClassPublicationMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestSubscriptions. ///It shall report the attributes of one object class subscribed to by ///the joined federate. One of these interactions shall be sent for each ///object class that is subscribed to by the joined federate. This information ///shall reflect related DDM usage. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportObjectClassSubscription(HLAreportObjectClassSubscriptionMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestPublications. ///It shall report the interaction classes published by the joined federate. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportInteractionPublication(HLAreportInteractionPublicationMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestSubscriptions. ///It shall report the interaction classes subscribed to by the joined ///federate. This information shall reflect related DDM usage. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportInteractionSubscription(HLAreportInteractionSubscriptionMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate.HLArequest.HLArequestObject InstancesThatCanBeDeleted. ///It shall report the number of object instances (by registered class ///of the object instances) whose HLAprivilegeToDeleteObject attribute ///areowned by the joined federate. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportObjectInstancesThatCanBeDeleted(HLAreportObjectInstancesThatCanBeDeletedMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestObjectInstancessUpdated. ///It shall report the number of object instances (by registered class ///of the object instances) for which the joined federate has invoked ///the Update Attribute Values service. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportObjectInstancesUpdated(HLAreportObjectInstancesUpdatedMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestObjectInstancessReflected. ///It shall report the number of object instances (by registered class ///of the object instances) for which the joined federate has had a Reflect ///Attribute Values service invocation. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportObjectInstancesReflected(HLAreportObjectInstancesReflectedMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestUpdatesSent. ///It shall report the number of updates sent (by registered class of ///the object instances of the updates) by the joined federate since ///the beginning of the federation execution. One interaction of this ///class shall be sent by the RTI for each transportation type used. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportUpdatesSent(HLAreportUpdatesSentMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestReflectionsReceived. ///It shall report the number of reflections received (by registered ///class of the object instances of the reflects) by the joined federate ///since the beginning of the federation execution. One interaction of ///this class shall be sent by the RTI for each transportation type used. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportReflectionsReceived(HLAreportReflectionsReceivedMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestInteractionsSent. ///It shall report the number of interactions sent (by sent class of ///the interactions) by the joined federate since the beginning of the ///federation execution. This count shall include interactions sent with ///region. One interaction of this class shall be sent by the RTI for ///each transportation type used. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportInteractionsSent(HLAreportInteractionsSentMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest. HLArequestInteractionsReceived. ///It shall report the number of interactions received (by sent class ///of the interactions) by the joined federate since the beginning of ///the federation execution. One interaction of this class shall be sent ///by the RTI for each transportation type used. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportInteractionsReceived(HLAreportInteractionsReceivedMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestObjectInstance ///Information. It shall report on a single object instance and portray ///the attributes of that object instance that are owned by the joined ///federate, the registered class of the object instance, and the known ///class of the object instance at the joined federate. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportObjectInstanceInformation(HLAreportObjectInstanceInformationMessage msg); ///<summary> ///The interaction shall be sent by the RTI when an exception occurs ///as the result of a service invocation at the indicated joined federate. ///This interaction shall be sent only if the last HLAmanager.HLAfederate.HLAadjust. ///HLAsetExceptionReporting interaction changing the HLAreportingState ///parameter sets the parameter to HLAtrue, for the indicated joined ///federate. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportException(HLAreportExceptionMessage msg); ///<summary> ///This interaction shall be sent by the RTI whenever an HLA service ///is invoked, either by the indicated joined federate or by the RTI ///at the indicated joined federate, and Service Reporting is Enabled ///for the indicated joined federate. This interaction shall always contain ///the arguments supplied by the service invoker. If the service invocation ///was successful, the interaction also shall contain the value returned ///to the invoker (if the service returns a value); otherwise, the interaction ///also shall contain an indication of the exception that shall be raised ///to the invoker. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportServiceInvocation(HLAreportServiceInvocationMessage msg); ///<summary> ///The interaction shall be sent by the RTI when one the following occurs: ///- a MOM interaction without all the necessary parameters is sent or ///- an interaction that imitates a federate's invocation of an RTI service ///is sent and not all of the service's pre-conditions are met. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportMOMexception(HLAreportMOMexceptionMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestSynchronizationPoints. ///It shall report the list of active synchronization points in the federation ///execution. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportSynchronizationPoints(HLAreportSynchronizationPointsMessage msg); ///<summary> ///The interaction shall be sent by the RTI in response to an interaction ///of class HLAmanager.HLAfederate. HLArequest.HLArequestSynchronizationPointStatus. ///It shall report the status of a particular synchronization point. ///This shall be a list that includes each federate (and its synchronization ///status) that is associated with a particular synchronization point. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAreportSynchronizationPointStatus(HLAreportSynchronizationPointStatusMessage msg); ///<summary> ///Cause the joined federate to resign from the federation execution. ///A joined federate shall be able to send this interaction anytime. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAresignFederationExecution(HLAresignFederationExecutionMessage msg); ///<summary> ///Mimic the federate's report of achieving a synchronization point. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAsynchronizationPointAchieved(HLAsynchronizationPointAchievedMessage msg); ///<summary> ///Mimic the federate's report of starting a save. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAfederateSaveBegun(HLAfederateSaveBegunMessage msg); ///<summary> ///Mimic the joined federate's report of completion of a save. A joined ///federate shall be able to send this interaction during a federation ///save. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAfederateSaveComplete(HLAfederateSaveCompleteMessage msg); ///<summary> ///Mimic the joined federate's report of completion of a restore. A joined ///federate shall be able to send this interaction during a federation ///restore. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> void OnReceiveHLAfederateRestoreComplete(HLAfederateRestoreCompleteMessage msg); */ #endif #region Methods ///<summary> ///Set the joined federate's publication status of an interaction class. ///</summary> ///<param name="msg"> the message associated with the interaction</param> ///<exception cref="InteractionClassNotRecognized"> if the interaction class was not recognized</exception> ///<exception cref="InteractionParameterNotRecognized"> if a parameter of the interaction was not /// recognized</exception> ///<exception cref="InteractionClassNotSubscribed"> if the federate had not subscribed to the /// interaction class</exception> ///<exception cref="FederateInternalError"> if an error occurs in the federate</exception> public abstract void OnReceiveHLApublishInteractionClass(HLApublishInteractionClassMessage msg);