///<summary> Reads this HLAmetaFederationMessage from the specified stream.</summary>
 ///<param name="reader"> the input stream to read from</param>
 ///<returns> the object</returns>
 ///<exception cref="IOException"> if an error occurs</exception>
 public override object Deserialize(HlaEncodingReader reader, ref object msg)
 {
     HLAmetaFederationMessage decodedValue;
     if (!(msg is HLAmetaFederationMessage))
     {
         decodedValue = new HLAmetaFederationMessage();
         BaseInteractionMessage baseMsg = msg as BaseInteractionMessage;
         decodedValue.InteractionClassHandle = baseMsg.InteractionClassHandle;
         decodedValue.FederationExecutionHandle = baseMsg.FederationExecutionHandle;
         decodedValue.UserSuppliedTag = baseMsg.UserSuppliedTag;
     }
     else
     {
         decodedValue = msg as HLAmetaFederationMessage;
     }
     object tmp = decodedValue;
     decodedValue = base.Deserialize(reader, ref tmp) as HLAmetaFederationMessage;
     return decodedValue;
 }
        ///<summary> Reads this HLAmetaFederationMessage from the specified stream.</summary>
        ///<param name="reader"> the input stream to read from</param>
        ///<returns> the object</returns>
        ///<exception cref="IOException"> if an error occurs</exception>
        public override object Deserialize(HlaEncodingReader reader, ref object msg)
        {
            HLAmetaFederationMessage decodedValue;

            if (!(msg is HLAmetaFederationMessage))
            {
                decodedValue = new HLAmetaFederationMessage();
                BaseInteractionMessage baseMsg = msg as BaseInteractionMessage;
                decodedValue.InteractionClassHandle    = baseMsg.InteractionClassHandle;
                decodedValue.FederationExecutionHandle = baseMsg.FederationExecutionHandle;
                decodedValue.UserSuppliedTag           = baseMsg.UserSuppliedTag;
            }
            else
            {
                decodedValue = msg as HLAmetaFederationMessage;
            }
            object tmp = decodedValue;

            decodedValue = base.Deserialize(reader, ref tmp) as HLAmetaFederationMessage;
            return(decodedValue);
        }