public static new SubRecord Read(Stream stream) { SubRecord record = SubRecord.ReadBase(stream); switch (record.Type) { case SubRecordType.CommonObjectData: return(new CommonObjectData(record)); case SubRecordType.End: return(new End(record)); case SubRecordType.GroupMarker: return(new GroupMarker(record)); case SubRecordType.ClipboardFormat: return(new ClipboardFormat(record)); case SubRecordType.PictureOption: return(new PictureOption(record)); default: return(record); } }
public new static SubRecord ReadBase(Stream stream) { BinaryReader reader = new BinaryReader(stream); SubRecord record = new SubRecord(); record.Type = reader.ReadUInt16(); record.Size = reader.ReadUInt16(); record.Data = reader.ReadBytes(record.Size); return record; }
public new static SubRecord ReadBase(Stream stream) { BinaryReader reader = new BinaryReader(stream); SubRecord record = new SubRecord(); record.Type = reader.ReadUInt16(); record.Size = reader.ReadUInt16(); record.Data = reader.ReadBytes(record.Size); return(record); }
public new static SubRecord ReadBase(Stream stream) { BinaryReader binaryReader = new BinaryReader(stream); SubRecord subRecord = new SubRecord(); subRecord.Type = binaryReader.ReadUInt16(); subRecord.Size = binaryReader.ReadUInt16(); subRecord.Data = binaryReader.ReadBytes((int)subRecord.Size); return(subRecord); }
public override void Decode() { MemoryStream memoryStream = new MemoryStream(this.Data); this.SubRecords.Clear(); while (memoryStream.Position < (long)((ulong)this.Size)) { SubRecord subRecord = SubRecord.Read(memoryStream); subRecord.Decode(); this.SubRecords.Add(subRecord); } }
public override void Decode() { MemoryStream stream = new MemoryStream(Data); SubRecords.Clear(); while (stream.Position < Size) { SubRecord subRecord = SubRecord.Read(stream); subRecord.Decode(); SubRecords.Add(subRecord); } }
public new static SubRecord Read(Stream stream) { SubRecord subRecord = SubRecord.ReadBase(stream); ushort type = subRecord.Type; SubRecord result; if (type != 0) { switch (type) { case 6: result = new GroupMarker(subRecord); break; case 7: result = new ClipboardFormat(subRecord); break; case 8: result = new PictureOption(subRecord); break; default: if (type != 21) { result = subRecord; } else { result = new CommonObjectData(subRecord); } break; } } else { result = new End(subRecord); } return(result); }
public CommonObjectData(SubRecord record) : base(record) { }
public PictureOption(SubRecord record) : base(record) { }
public ClipboardFormat(SubRecord record) : base(record) { }
public GroupMarker(SubRecord record) : base(record) { }
public SubRecord(SubRecord record) : base(record) { }
public End(SubRecord record) : base(record) { }