Class SEELateJoinerFederate

All Implemented Interfaces:
SKFederateInterface

public abstract class SEELateJoinerFederate extends SEEAbstractFederate
A complete SpaceFOM late-joiner implementation. It is recommended for student teams participating in the Simulation Exploration Experience (SEE) program to use this implementation as the starting point for building federates.
Since:
2.0
  • Constructor Details

    • SEELateJoinerFederate

      protected SEELateJoinerFederate(SEEFederateAmbassador federateAmbassador, org.see.skf.conf.FederateConfiguration federateConfiguration)
  • Method Details

    • configureAndStart

      public void configureAndStart()
      Parses the configuration provided to the federate, joins the federation execution, and begins running in time with the rest of the federation execution.
      Specified by:
      configureAndStart in class SKBaseFederate
    • declareClasses

      public abstract void declareClasses() throws hla.rti1516_2025.exceptions.FederateNotExecutionMember, hla.rti1516_2025.exceptions.AttributeNotDefined, hla.rti1516_2025.exceptions.ObjectClassNotDefined, hla.rti1516_2025.exceptions.RestoreInProgress, hla.rti1516_2025.exceptions.NameNotFound, hla.rti1516_2025.exceptions.NotConnected, hla.rti1516_2025.exceptions.RTIinternalError, hla.rti1516_2025.exceptions.InvalidObjectClassHandle, hla.rti1516_2025.exceptions.SaveInProgress, hla.rti1516_2025.exceptions.InvalidInteractionClassHandle, hla.rti1516_2025.exceptions.InteractionClassNotDefined, hla.rti1516_2025.exceptions.FederateServiceInvocationsAreBeingReportedViaMOM
      Publish/subscribe the object and interaction classes that are relevant to the federate.
      Throws:
      hla.rti1516_2025.exceptions.FederateNotExecutionMember - if the federate is not a member of the federation execution.
      hla.rti1516_2025.exceptions.AttributeNotDefined - if the object class does not have a specified attribute.
      hla.rti1516_2025.exceptions.ObjectClassNotDefined - if the object class is not defined in the FOM.
      hla.rti1516_2025.exceptions.RestoreInProgress - if the federation execution is being restored at the time of declaring the class.
      hla.rti1516_2025.exceptions.NameNotFound - if the name of the object/interaction class was not found.
      hla.rti1516_2025.exceptions.NotConnected - if the federate is not connected to the RTI.
      hla.rti1516_2025.exceptions.RTIinternalError - if an unknown internal error associated with the RTI is encountered.
      hla.rti1516_2025.exceptions.InvalidObjectClassHandle - if the handle provided for the object class is invalid.
      hla.rti1516_2025.exceptions.SaveInProgress - if the federation execution is in the process of undergoing a save operation at the time of declaring the class.
      hla.rti1516_2025.exceptions.InvalidInteractionClassHandle - if the handle provided for the interaction class is invalid.
      hla.rti1516_2025.exceptions.InteractionClassNotDefined - if the interaction class is not defined in the FOM.
      hla.rti1516_2025.exceptions.FederateServiceInvocationsAreBeingReportedViaMOM - if the federate service invocation is reported via the Management Object Model (MOM).
    • declareObjectInstances

      public abstract void declareObjectInstances() throws hla.rti1516_2025.exceptions.FederateNotExecutionMember, hla.rti1516_2025.exceptions.ObjectClassNotPublished, hla.rti1516_2025.exceptions.ObjectClassNotDefined, hla.rti1516_2025.exceptions.RestoreInProgress, hla.rti1516_2025.exceptions.ObjectInstanceNotKnown, hla.rti1516_2025.exceptions.IllegalName, hla.rti1516_2025.exceptions.ObjectInstanceNameInUse, hla.rti1516_2025.exceptions.ObjectInstanceNameNotReserved, hla.rti1516_2025.exceptions.NotConnected, hla.rti1516_2025.exceptions.RTIinternalError, hla.rti1516_2025.exceptions.SaveInProgress
      Creates the object instances (and potentially reserves their names) for use by the federate.
      Throws:
      hla.rti1516_2025.exceptions.FederateNotExecutionMember - if the federate is not a member of the federation execution.
      hla.rti1516_2025.exceptions.ObjectClassNotPublished - if an attempt is made to create an instance of an object class that has yet to be published by the federate.
      hla.rti1516_2025.exceptions.ObjectClassNotDefined - if the object class is not defined in the FOM.
      hla.rti1516_2025.exceptions.RestoreInProgress - if the federation execution is being restored at the time of creating the object instance.
      hla.rti1516_2025.exceptions.ObjectInstanceNotKnown - if an attempt to access an unknown/deleted object instance is made.
      hla.rti1516_2025.exceptions.IllegalName - if an attempt is made to use disallowed name for an object instance.
      hla.rti1516_2025.exceptions.ObjectInstanceNameInUse - if the federate attempts to use name that is being used by another federate for one of its object instances.
      hla.rti1516_2025.exceptions.ObjectInstanceNameNotReserved - if the federate attempts to use a name that it has not yet been reserved.
      hla.rti1516_2025.exceptions.NotConnected - if the federate is not connected to the RTI.
      hla.rti1516_2025.exceptions.RTIinternalError - if an unknown internal error associated with the RTI is encountered.
      hla.rti1516_2025.exceptions.SaveInProgress - if the federation execution is in the process of undergoing a save operation at the time of creating the object instance.