using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace skyscraper5.src.Id3
{
	internal abstract class Id3Frame
	{
		protected Id3Frame(ushort entryFlags)
		{
			TagAlterPreservation = (entryFlags & 0x4000) != 0;
			FileAlterPreservation = (entryFlags & 0x2000) != 0;
			ReadOnly = (entryFlags & 0x1000) != 0;
			GroupingIdentity = (entryFlags & 0x0040) != 0;
			Compression = (entryFlags & 0x0008) != 0;
			Encryption = (entryFlags & 0x0004) != 0;
			Unsynchronisation = (entryFlags & 0x0002) != 0;
			DataLengthIndicator = (entryFlags & 0x0001) != 0;
		}

		public bool TagAlterPreservation { get; }
		public bool FileAlterPreservation { get; }
		public bool ReadOnly { get; }
		public bool GroupingIdentity { get; }
		public bool Compression { get; }
		public bool Encryption { get; }
		public bool Unsynchronisation { get; }
		public bool DataLengthIndicator { get; }
	}
}
