override public void Encode(ByteList bytes) { bytes.Add(ClassId); // Write out this class id first Int16 lengthPos = bytes.CurrentWritePosition; // Get the current write position, so we // can write the length here later bytes.Add((Int16)0); // Write out a place holder for the length base.Encode(bytes); // Encode the part of the object defined // by the base class bytes.AddObject(CurrentTick); Int16 length = Convert.ToInt16(bytes.CurrentWritePosition - lengthPos - 2); bytes.WriteInt16To(lengthPos, length); // Write out the length of this object }