///<summary>
        /// Writes this HLAfederate.HLAlogicalTime to the specified stream.
        ///</summary>
        ///<param name="writer"> the output stream to write to</param>
        ///<param name="HLAfederationName"> the property to serialize</param>
        ///<exception cref="System.IO.IOException"> if an error occurs</exception>
        public override void Serialize(HlaEncodingWriter writer, object HLAlogicalTime)
        {
            try
            {
                ILogicalTime logicalTime           = (ILogicalTime)HLAlogicalTime;
                byte[]       logicalTimeBytesArray = new byte[logicalTime.EncodedLength()];
                logicalTime.Encode(logicalTimeBytesArray, 0);

                writer.WriteHLAopaqueData(logicalTimeBytesArray);
            }
            catch (IOException ioe)
            {
                throw new RTIinternalError(ioe.ToString());
            }
        }
Esempio n. 2
0
        protected ILogicalTime ConvertToFederationLogicalTimeRepresentation(ILogicalTime time)
        {
            if (Federation != null)
            {
                ILogicalTimeFactory factory = Federation.LogicalTimeFactory;

                if (factory != null)
                {
                    byte[] timeByteArray = new byte[time.EncodedLength()];
                    time.Encode(timeByteArray, 0);

                    return(factory.Decode(timeByteArray, 0));
                }
                else
                {
                    return(time);
                }
            }
            else
            {
                return(time);
            }
        }