public new void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
               _objectID.unmarshal(dis);
               _referencedObjectID.unmarshal(dis);
               _updateNumber = dis.readUshort();
               _forceID = dis.readByte();
               _modifications = dis.readByte();
               _objectType.unmarshal(dis);
               _objectLocation.unmarshal(dis);
               _objectOrientation.unmarshal(dis);
               _objectAppearance = dis.readDouble();
               _requesterID.unmarshal(dis);
               _receivingID.unmarshal(dis);
               _pad2 = dis.readUint();
            } // end try
               catch(Exception e)
            {
              Trace.WriteLine(e);
              Trace.Flush();
            }
        }
        public new void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
                _groupEntityID.unmarshal(dis);
                _groupedEntityCategory = dis.readByte();
                _numberOfGroupedEntities = dis.readByte();
                _pad2 = dis.readUint();
                _latitude = dis.readDouble();
                _longitude = dis.readDouble();
                for(int idx = 0; idx < _numberOfGroupedEntities; idx++)
                {
                    VariableDatum anX = new VariableDatum();
                    anX.unmarshal(dis);
                    _groupedEntityDescriptions.Add(anX);
                };

            } // end try
            catch(Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        }
        public new void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
               _site = dis.readUshort();
               _application = dis.readUshort();
               _entity = dis.readUshort();
               _forceId = dis.readByte();
               _numberOfArticulationParameters = dis.readByte();
               _entityKind = dis.readByte();
               _domain = dis.readByte();
               _country = dis.readUshort();
               _category = dis.readByte();
               _subcategory = dis.readByte();
               _specific = dis.readByte();
               _extra = dis.readByte();
               _altEntityKind = dis.readByte();
               _altDomain = dis.readByte();
               _altCountry = dis.readUshort();
               _altCategory = dis.readByte();
               _altSubcategory = dis.readByte();
               _altSpecific = dis.readByte();
               _altExtra = dis.readByte();
               _xVelocity = dis.readFloat();
               _yVelocity = dis.readFloat();
               _zVelocity = dis.readFloat();
               _xLocation = dis.readDouble();
               _yLocation = dis.readDouble();
               _zLocation = dis.readDouble();
               _psi = dis.readFloat();
               _theta = dis.readFloat();
               _phi = dis.readFloat();
               _entityAppearance = dis.readUint();
               _deadReckoningAlgorithm = dis.readByte();
               for(int idx = 0; idx < _otherParameters.Length; idx++)
               {
                _otherParameters[idx] = dis.readByte();
               } // end of array unmarshaling
               _xAcceleration = dis.readFloat();
               _yAcceleration = dis.readFloat();
               _zAcceleration = dis.readFloat();
               _xAngularVelocity = dis.readFloat();
               _yAngularVelocity = dis.readFloat();
               _zAngularVelocity = dis.readFloat();
               for(int idx = 0; idx < _marking.Length; idx++)
               {
                _marking[idx] = dis.readByte();
               } // end of array unmarshaling
               _capabilities = dis.readUint();
            for(int idx = 0; idx < _numberOfArticulationParameters; idx++)
            {
               ArticulationParameter anX = new ArticulationParameter();
            anX.unmarshal(dis);
            _articulationParameters.Add(anX);
            };

            } // end try
               catch(Exception e)
            {
              Trace.WriteLine(e);
              Trace.Flush();
            }
        }
 public void unmarshal(DataInputStream dis)
 {
     try
     {
         _parameterTypeDesignator = dis.readByte();
         _changeIndicator = dis.readByte();
         _partAttachedTo = dis.readUshort();
         _parameterType = dis.readUint();
         _parameterValue = dis.readDouble();
     } // end try
     catch(Exception e)
     {
         Trace.WriteLine(e);
         Trace.Flush();
     }
 }
 public void unmarshal(DataInputStream dis)
 {
     try
     {
        _x = dis.readDouble();
        _y = dis.readDouble();
        _z = dis.readDouble();
     } // end try
        catch(Exception e)
     {
       Trace.WriteLine(e);
       Trace.Flush();
     }
 }