public ContentDescriptionObject(TagLib.Asf.File file, long position) : base(file, position) { this.title = string.Empty; this.author = string.Empty; this.copyright = string.Empty; this.description = string.Empty; this.rating = string.Empty; if (base.Guid != TagLib.Asf.Guid.AsfContentDescriptionObject) { throw new CorruptFileException("Object GUID incorrect."); } if (base.OriginalSize < 0x22L) { throw new CorruptFileException("Object size too small."); } ushort length = file.ReadWord(); ushort num2 = file.ReadWord(); ushort num3 = file.ReadWord(); ushort num4 = file.ReadWord(); ushort num5 = file.ReadWord(); this.title = file.ReadUnicode(length); this.author = file.ReadUnicode(num2); this.copyright = file.ReadUnicode(num3); this.description = file.ReadUnicode(num4); this.rating = file.ReadUnicode(num5); }
protected bool Parse(TagLib.Asf.File file) { int length = file.ReadWord(); this.name = file.ReadUnicode(length); this.type = (DataType) file.ReadWord(); int num2 = file.ReadWord(); switch (this.type) { case DataType.Unicode: this.strValue = file.ReadUnicode(num2); break; case DataType.Bytes: this.byteValue = file.ReadBlock(num2); break; case DataType.Bool: this.longValue = file.ReadDWord(); break; case DataType.DWord: this.longValue = file.ReadDWord(); break; case DataType.QWord: this.longValue = file.ReadQWord(); break; case DataType.Word: this.longValue = file.ReadWord(); break; default: return false; } return true; }
protected bool Parse(TagLib.Asf.File file) { this.lang_list_index = file.ReadWord(); this.stream_number = file.ReadWord(); ushort length = file.ReadWord(); this.type = (DataType) file.ReadWord(); int num2 = (int) file.ReadDWord(); this.name = file.ReadUnicode(length); switch (this.type) { case DataType.Unicode: this.strValue = file.ReadUnicode(num2); break; case DataType.Bytes: this.byteValue = file.ReadBlock(num2); break; case DataType.Bool: case DataType.DWord: this.longValue = file.ReadDWord(); break; case DataType.QWord: this.longValue = file.ReadQWord(); break; case DataType.Word: this.longValue = file.ReadWord(); break; case DataType.Guid: this.guidValue = file.ReadGuid(); break; default: return false; } return true; }