public override EsfNode CreateCopy() { RecordEntryNode node = new RecordEntryNode(Codec); CopyMembers(node); return(node); }
public void Decode(BinaryReader reader, EsfType unused) { string name; byte version; Codec.ReadRecordInfo(reader, OriginalTypeCode, out name, out version); Name = name; Version = version; Size = (int)Codec.ReadSize(reader); int itemCount = Codec.ReadCount(reader); List <EsfNode> containedNodes = new List <EsfNode>(itemCount); for (int i = 0; i < itemCount; i++) { RecordEntryNode contained = new RecordEntryNode(Codec) { Name = string.Format("{0} - {1}", Name, i), TypeCode = EsfType.RECORD_BLOCK_ENTRY }; contained.Decode(reader, EsfType.RECORD_BLOCK_ENTRY); containedNodes.Add(contained); } Value = containedNodes; }