Add writable optical image capabilities enumeration.

This commit is contained in:
2020-04-21 21:00:48 +01:00
parent 60f1376ccf
commit fe4e055fbc
2 changed files with 18 additions and 0 deletions

View File

@@ -329,4 +329,19 @@ namespace Aaru.CommonTypes.Enums
/// <summary>Extended density coercitivity (about 750Oe as found in 3.5" ED disks).</summary>
Extended
}
[Flags]
public enum OpticalImageCapabilities : ulong
{
CanStoreAudioTracks = 0x01, CanStoreVideoTracks = 0x02, CanStoreDataTracks = 0x03,
CanStorePregaps = 0x04,
// TODO: Implement
CanStoreIndexes = 0x08, CanStoreSubchannelPq = 0x10, CanStoreSubchannelRw = 0x20,
CanStoreSessions = 0x40, CanStoreIsrc = 0x80, CanStoreCdText = 0x100,
CanStoreMcn = 0x200, CanStoreRawData = 0x400,
// TODO: Implement
CanStoreScrambledData = 0x800, CanStoreCookedData = 0x1000, CanStoreMultipleTracks = 0x2000
}
}

View File

@@ -37,12 +37,15 @@
// ****************************************************************************/
using System.Collections.Generic;
using Aaru.CommonTypes.Enums;
using Aaru.CommonTypes.Structs;
namespace Aaru.CommonTypes.Interfaces
{
public interface IWritableOpticalImage : IWritableImage, IOpticalMediaImage
{
OpticalImageCapabilities OpticalCapabilities { get; }
/// <summary>Sets tracks for optical media</summary>
/// <param name="tracks">List of tracks</param>
/// <returns><c>true</c> if operating completed successfully, <c>false</c> otherwise</returns>