/* internal static RawFrame CreateV4Frame(string frameID, FrameFlags flags, byte[] payload) { var f = new RawFrameV4(frameID, flags, payload); return f; } */ internal static RawFrame CreateFrame(string frameID, FrameFlags flags, byte[] payload, TagVersion version) { RawFrame frame; switch (version) { case TagVersion.Id3V23: frame = new RawFrameV3(frameID, flags, payload); break; case TagVersion.Id3V24: frame = new RawFrameV4(frameID, flags, payload); break; default: throw new ID3TagException("Unknown Tag Version found!"); } return frame; }
/// <summary> /// Gets the Flags /// </summary> /// <returns>The flags</returns> public FrameFlags GetFlags() { var flags = new FrameFlags { Compression = Compression, DataLengthIndicator = DataLengthIndicator, Encryption = Encryption, FileAlterPreservation = FileAlterPreservation, GroupingIdentify = GroupingIdentify, ReadOnly = ReadOnly, TagAlterPreservation = TagAlterPreservation, Unsynchronisation = Unsynchronisation }; return flags; }