[Refactor] Convert to switch expressions.

This commit is contained in:
2024-05-01 17:18:37 +01:00
parent 87613c03b7
commit b75fcf0f41
48 changed files with 1321 additions and 2619 deletions

View File

@@ -140,107 +140,105 @@ public sealed partial class AaruFormat
// Get the Aaru Metadata media type from Aaru media type
static MetadataMediaType GetMetadataMediaType(MediaType type)
{
switch(type)
{
case MediaType.CD:
case MediaType.CDDA:
case MediaType.CDG:
case MediaType.CDEG:
case MediaType.CDI:
case MediaType.CDIREADY:
case MediaType.CDROM:
case MediaType.CDROMXA:
case MediaType.CDPLUS:
case MediaType.CDMO:
case MediaType.CDR:
case MediaType.CDRW:
case MediaType.CDMRW:
case MediaType.VCD:
case MediaType.SVCD:
case MediaType.PCD:
case MediaType.SACD:
case MediaType.DDCD:
case MediaType.DDCDR:
case MediaType.DDCDRW:
case MediaType.DTSCD:
case MediaType.CDMIDI:
case MediaType.CDV:
case MediaType.DVDROM:
case MediaType.DVDR:
case MediaType.DVDRW:
case MediaType.DVDPR:
case MediaType.DVDPRW:
case MediaType.DVDPRWDL:
case MediaType.DVDRDL:
case MediaType.DVDPRDL:
case MediaType.DVDRAM:
case MediaType.DVDRWDL:
case MediaType.DVDDownload:
case MediaType.HDDVDROM:
case MediaType.HDDVDRAM:
case MediaType.HDDVDR:
case MediaType.HDDVDRW:
case MediaType.HDDVDRDL:
case MediaType.HDDVDRWDL:
case MediaType.BDROM:
case MediaType.UHDBD:
case MediaType.BDR:
case MediaType.BDRE:
case MediaType.BDRXL:
case MediaType.BDREXL:
case MediaType.EVD:
case MediaType.FVD:
case MediaType.HVD:
case MediaType.CBHD:
case MediaType.HDVMD:
case MediaType.VCDHD:
case MediaType.SVOD:
case MediaType.FDDVD:
case MediaType.LD:
case MediaType.LDROM:
case MediaType.CRVdisc:
case MediaType.LDROM2:
case MediaType.LVROM:
case MediaType.MegaLD:
case MediaType.PS1CD:
case MediaType.PS2CD:
case MediaType.PS2DVD:
case MediaType.PS3DVD:
case MediaType.PS3BD:
case MediaType.PS4BD:
case MediaType.PS5BD:
case MediaType.UMD:
case MediaType.XGD:
case MediaType.XGD2:
case MediaType.XGD3:
case MediaType.XGD4:
case MediaType.MEGACD:
case MediaType.SATURNCD:
case MediaType.GDROM:
case MediaType.GDR:
case MediaType.SuperCDROM2:
case MediaType.JaguarCD:
case MediaType.ThreeDO:
case MediaType.PCFX:
case MediaType.NeoGeoCD:
case MediaType.GOD:
case MediaType.WOD:
case MediaType.WUOD:
case MediaType.CDTV:
case MediaType.CD32:
case MediaType.Nuon:
case MediaType.Playdia:
case MediaType.Pippin:
case MediaType.FMTOWNS:
case MediaType.MilCD:
case MediaType.VideoNow:
case MediaType.VideoNowColor:
case MediaType.VideoNowXp:
case MediaType.CVD:
return MetadataMediaType.OpticalDisc;
default:
return MetadataMediaType.BlockMedia;
}
return type switch
{
MediaType.CD
or MediaType.CDDA
or MediaType.CDG
or MediaType.CDEG
or MediaType.CDI
or MediaType.CDIREADY
or MediaType.CDROM
or MediaType.CDROMXA
or MediaType.CDPLUS
or MediaType.CDMO
or MediaType.CDR
or MediaType.CDRW
or MediaType.CDMRW
or MediaType.VCD
or MediaType.SVCD
or MediaType.PCD
or MediaType.SACD
or MediaType.DDCD
or MediaType.DDCDR
or MediaType.DDCDRW
or MediaType.DTSCD
or MediaType.CDMIDI
or MediaType.CDV
or MediaType.DVDROM
or MediaType.DVDR
or MediaType.DVDRW
or MediaType.DVDPR
or MediaType.DVDPRW
or MediaType.DVDPRWDL
or MediaType.DVDRDL
or MediaType.DVDPRDL
or MediaType.DVDRAM
or MediaType.DVDRWDL
or MediaType.DVDDownload
or MediaType.HDDVDROM
or MediaType.HDDVDRAM
or MediaType.HDDVDR
or MediaType.HDDVDRW
or MediaType.HDDVDRDL
or MediaType.HDDVDRWDL
or MediaType.BDROM
or MediaType.UHDBD
or MediaType.BDR
or MediaType.BDRE
or MediaType.BDRXL
or MediaType.BDREXL
or MediaType.EVD
or MediaType.FVD
or MediaType.HVD
or MediaType.CBHD
or MediaType.HDVMD
or MediaType.VCDHD
or MediaType.SVOD
or MediaType.FDDVD
or MediaType.LD
or MediaType.LDROM
or MediaType.CRVdisc
or MediaType.LDROM2
or MediaType.LVROM
or MediaType.MegaLD
or MediaType.PS1CD
or MediaType.PS2CD
or MediaType.PS2DVD
or MediaType.PS3DVD
or MediaType.PS3BD
or MediaType.PS4BD
or MediaType.PS5BD
or MediaType.UMD
or MediaType.XGD
or MediaType.XGD2
or MediaType.XGD3
or MediaType.XGD4
or MediaType.MEGACD
or MediaType.SATURNCD
or MediaType.GDROM
or MediaType.GDR
or MediaType.SuperCDROM2
or MediaType.JaguarCD
or MediaType.ThreeDO
or MediaType.PCFX
or MediaType.NeoGeoCD
or MediaType.GOD
or MediaType.WOD
or MediaType.WUOD
or MediaType.CDTV
or MediaType.CD32
or MediaType.Nuon
or MediaType.Playdia
or MediaType.Pippin
or MediaType.FMTOWNS
or MediaType.MilCD
or MediaType.VideoNow
or MediaType.VideoNowColor
or MediaType.VideoNowXp
or MediaType.CVD => MetadataMediaType.OpticalDisc,
_ => MetadataMediaType.BlockMedia
};
}
// Gets a DDT entry

View File

@@ -2541,26 +2541,15 @@ public sealed partial class AaruFormat
case MediaType.PriamDataTower:
if(_sectorSubchannel == null) return ReadSector(sectorAddress, out buffer);
uint tagSize = 0;
switch(_imageInfo.MediaType)
{
case MediaType.AppleFileWare:
case MediaType.AppleProfile:
case MediaType.AppleWidget:
tagSize = 20;
break;
case MediaType.AppleSonySS:
case MediaType.AppleSonyDS:
tagSize = 12;
break;
case MediaType.PriamDataTower:
tagSize = 24;
break;
}
uint tagSize = _imageInfo.MediaType switch
{
MediaType.AppleFileWare
or MediaType.AppleProfile
or MediaType.AppleWidget => 20,
MediaType.AppleSonySS or MediaType.AppleSonyDS => 12,
MediaType.PriamDataTower => 24,
_ => 0
};
uint sectorSize = 512 + tagSize;
errno = ReadSectors(sectorAddress, length, out data);

View File

@@ -4979,26 +4979,14 @@ public sealed partial class AaruFormat
or MediaType.AppleWidget
or MediaType.PriamDataTower)
{
DataType tagType = DataType.NoData;
switch(_imageInfo.MediaType)
{
case MediaType.AppleSonySS:
case MediaType.AppleSonyDS:
tagType = DataType.AppleSonyTag;
break;
case MediaType.AppleFileWare:
case MediaType.AppleProfile:
case MediaType.AppleWidget:
tagType = DataType.AppleProfileTag;
break;
case MediaType.PriamDataTower:
tagType = DataType.PriamDataTowerTag;
break;
}
DataType tagType = _imageInfo.MediaType switch
{
MediaType.AppleSonySS or MediaType.AppleSonyDS => DataType.AppleSonyTag,
MediaType.AppleFileWare or MediaType.AppleProfile or MediaType.AppleWidget =>
DataType.AppleProfileTag,
MediaType.PriamDataTower => DataType.PriamDataTowerTag,
_ => DataType.NoData
};
idxEntry = new IndexEntry
{
@@ -5021,24 +5009,15 @@ public sealed partial class AaruFormat
crc64 = BitConverter.ToUInt64(blockCrc, 0)
};
switch(_imageInfo.MediaType)
{
case MediaType.AppleSonySS:
case MediaType.AppleSonyDS:
subchannelBlock.sectorSize = 12;
break;
case MediaType.AppleFileWare:
case MediaType.AppleProfile:
case MediaType.AppleWidget:
subchannelBlock.sectorSize = 20;
break;
case MediaType.PriamDataTower:
subchannelBlock.sectorSize = 24;
break;
}
subchannelBlock.sectorSize = _imageInfo.MediaType switch
{
MediaType.AppleSonySS or MediaType.AppleSonyDS => 12,
MediaType.AppleFileWare
or MediaType.AppleProfile
or MediaType.AppleWidget => 20,
MediaType.PriamDataTower => 24,
_ => subchannelBlock.sectorSize
};
byte[] lzmaProperties = null;