///<summary> Reads this HLAregisterObjectInstanceWithTimeMessage from the specified stream.</summary>
        ///<param name="reader"> the input stream to read from</param>
        ///<returns> the object</returns>
        ///<exception cref="System.IO.IOException"> if an error occurs</exception>
        public override object Deserialize(HlaEncodingReader reader, ref object msg)
        {
            HLAregisterObjectInstanceWithTimeMessage decodedValue;

            if (!(msg is HLAregisterObjectInstanceWithTimeMessage))
            {
                decodedValue = new HLAregisterObjectInstanceWithTimeMessage();
                BaseInteractionMessage baseMsg = msg as BaseInteractionMessage;
                decodedValue.CopyTo(baseMsg);
                //decodedValue.InteractionClassHandle = baseMsg.InteractionClassHandle;
                //decodedValue.FederationExecutionHandle = baseMsg.FederationExecutionHandle;
                //decodedValue.UserSuppliedTag = baseMsg.UserSuppliedTag;
            }
            else
            {
                decodedValue = msg as HLAregisterObjectInstanceWithTimeMessage;
            }

            object tmp = decodedValue;

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

            object tmp = decodedValue;

            try
            {
                decodedValue = base.Deserialize(reader, ref tmp) as HLAregisterObjectInstanceWithTimeMessage;
                decodedValue.LogicalTime = reader.ReadHLAopaqueData();
            }
            catch (System.IO.IOException ioe)
            {
                throw new RTIinternalError(ioe.ToString());
            }
            return decodedValue;
        }