public override void ReadData(CitpBinaryReader data) { base.ReadData(data); ThumbnailFormat = data.ReadCookie(); ThumbnailWidth = data.ReadUInt16(); ThumbnailHeight = data.ReadUInt16(); ThumbnailFlags = (ThumbnailOptions)data.ReadByte(); LibraryType = (MsexElementType)data.ReadByte(); if (MsexVersion < CitpMsexVersions.Msex11Version) { LibraryId = new CitpMsexLibraryId(data.ReadByte()); } else { LibraryId = data.ReadMsexLibraryId(); } int elementCount = (MsexVersion < CitpMsexVersions.Msex12Version) ? data.ReadByte() : data.ReadUInt16(); for (int n = 0; n < elementCount; n++) { ElementNumbers.Add(data.ReadByte()); } }
public static CitpMsexLibraryId ParseLibraryNumber(byte number) { CitpMsexLibraryId id = new CitpMsexLibraryId(); id.ParseNumber(number); return(id); }
public static CitpMsexLibraryId Parse(string libraryId) { string[] elements = libraryId.Split(':', '/', '_', '@'); if (elements.Length != 4) { throw new ArgumentException(@"The library id is not in the correct format. It must follow the format N:N/N/N", libraryId); } CitpMsexLibraryId id = new CitpMsexLibraryId() { Level = byte.Parse(elements[0]), Level1 = byte.Parse(elements[1]), Level2 = byte.Parse(elements[2]), Level3 = byte.Parse(elements[3]) }; return(id); }
public override void ReadData(CitpBinaryReader data) { LayerNumber = data.ReadByte(); PhysicalOutput = data.ReadByte(); if (MsexVersion < CitpMsexVersions.Msex12Version) { MediaLibraryNumber = data.ReadByte(); } else { MediaLibraryType = data.ReadByte(); MediaLibraryId = data.ReadMsexLibraryId(); } MediaNumber = data.ReadByte(); MediaName = data.ReadUcs2(); MediaPosition = data.ReadUInt32(); MediaLength = data.ReadUInt32(); MediaFPS = data.ReadByte(); LayerStatusFlags = data.ReadUInt32(); }