mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
Simplify some struct type names.
This commit is contained in:
@@ -455,14 +455,13 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
{
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
ProgressText =
|
||||
$"Hashing track {currentTrack.TrackSequence} of {opticalMediaImage.Tracks.Count}";
|
||||
ProgressText = $"Hashing track {currentTrack.Sequence} of {opticalMediaImage.Tracks.Count}";
|
||||
|
||||
ProgressValue++;
|
||||
});
|
||||
|
||||
if(currentTrack.TrackStartSector - previousTrackEnd != 0 && ChecksumMediaChecked)
|
||||
for(ulong i = previousTrackEnd + 1; i < currentTrack.TrackStartSector; i++)
|
||||
if(currentTrack.StartSector - previousTrackEnd != 0 && ChecksumMediaChecked)
|
||||
for(ulong i = previousTrackEnd + 1; i < currentTrack.StartSector; i++)
|
||||
{
|
||||
ulong sector = i;
|
||||
|
||||
@@ -479,13 +478,13 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
|
||||
AaruConsole.DebugWriteLine("Checksum command",
|
||||
"Track {0} starts at sector {1} and ends at sector {2}",
|
||||
currentTrack.TrackSequence, currentTrack.TrackStartSector,
|
||||
currentTrack.TrackEndSector);
|
||||
currentTrack.Sequence, currentTrack.StartSector,
|
||||
currentTrack.EndSector);
|
||||
|
||||
if(ChecksumTracksChecked)
|
||||
trackChecksum = new Checksum(enabledChecksums);
|
||||
|
||||
ulong sectors = currentTrack.TrackEndSector - currentTrack.TrackStartSector + 1;
|
||||
ulong sectors = currentTrack.EndSector - currentTrack.StartSector + 1;
|
||||
ulong doneSectors = 0;
|
||||
|
||||
while(doneSectors < sectors)
|
||||
@@ -507,7 +506,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
if(sectors - doneSectors >= SECTORS_TO_READ)
|
||||
{
|
||||
sector = opticalMediaImage.ReadSectors(doneSectors, SECTORS_TO_READ,
|
||||
currentTrack.TrackSequence);
|
||||
currentTrack.Sequence);
|
||||
|
||||
ulong doneSectorsToInvoke = doneSectors;
|
||||
|
||||
@@ -516,7 +515,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
Progress2Value = (int)(doneSectorsToInvoke / SECTORS_TO_READ);
|
||||
|
||||
Progress2Text =
|
||||
$"Hashing sectors {doneSectorsToInvoke} to {doneSectorsToInvoke + SECTORS_TO_READ} of track {currentTrack.TrackSequence}";
|
||||
$"Hashing sectors {doneSectorsToInvoke} to {doneSectorsToInvoke + SECTORS_TO_READ} of track {currentTrack.Sequence}";
|
||||
});
|
||||
|
||||
doneSectors += SECTORS_TO_READ;
|
||||
@@ -524,7 +523,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
else
|
||||
{
|
||||
sector = opticalMediaImage.ReadSectors(doneSectors, (uint)(sectors - doneSectors),
|
||||
currentTrack.TrackSequence);
|
||||
currentTrack.Sequence);
|
||||
|
||||
ulong doneSectorsToInvoke = doneSectors;
|
||||
|
||||
@@ -533,7 +532,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
Progress2Value = (int)(doneSectorsToInvoke / SECTORS_TO_READ);
|
||||
|
||||
Progress2Text =
|
||||
$"Hashing sectors {doneSectorsToInvoke} to {doneSectorsToInvoke + (sectors - doneSectorsToInvoke)} of track {currentTrack.TrackSequence}";
|
||||
$"Hashing sectors {doneSectorsToInvoke} to {doneSectorsToInvoke + (sectors - doneSectorsToInvoke)} of track {currentTrack.Sequence}";
|
||||
});
|
||||
|
||||
doneSectors += sectors - doneSectors;
|
||||
@@ -557,13 +556,13 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
foreach(ChecksumType chk in trackChecksum.End())
|
||||
TrackChecksums.Add(new ChecksumModel
|
||||
{
|
||||
Track = currentTrack.TrackSequence.ToString(),
|
||||
Track = currentTrack.Sequence.ToString(),
|
||||
Algorithm = chk.type.ToString(),
|
||||
Hash = chk.Value
|
||||
});
|
||||
});
|
||||
|
||||
previousTrackEnd = currentTrack.TrackEndSector;
|
||||
previousTrackEnd = currentTrack.EndSector;
|
||||
}
|
||||
|
||||
if(opticalMediaImage.Info.Sectors - previousTrackEnd != 0 && ChecksumMediaChecked)
|
||||
|
||||
@@ -711,7 +711,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
return;
|
||||
}
|
||||
|
||||
Dictionary<string, string> parsedOptions = new Dictionary<string, string>();
|
||||
Dictionary<string, string> parsedOptions = new();
|
||||
|
||||
/* TODO:
|
||||
if(grpOptions.Content is StackLayout stkImageOptions)
|
||||
@@ -996,23 +996,23 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
Progress2Value = Progress2MaxValue;
|
||||
});
|
||||
|
||||
Dictionary<byte, string> isrcs = new Dictionary<byte, string>();
|
||||
Dictionary<byte, byte> trackFlags = new Dictionary<byte, byte>();
|
||||
Dictionary<byte, string> isrcs = new();
|
||||
Dictionary<byte, byte> trackFlags = new();
|
||||
string mcn = null;
|
||||
HashSet<int> subchannelExtents = new HashSet<int>();
|
||||
Dictionary<byte, int> smallestPregapLbaPerTrack = new Dictionary<byte, int>();
|
||||
HashSet<int> subchannelExtents = new();
|
||||
Dictionary<byte, int> smallestPregapLbaPerTrack = new();
|
||||
|
||||
foreach(SectorTagType tag in _inputFormat.Info.ReadableSectorTags.
|
||||
Where(t => t == SectorTagType.CdTrackIsrc).OrderBy(t => t))
|
||||
{
|
||||
foreach(Track track in inputOptical.Tracks)
|
||||
{
|
||||
byte[] isrc = _inputFormat.ReadSectorTag(track.TrackSequence, tag);
|
||||
byte[] isrc = _inputFormat.ReadSectorTag(track.Sequence, tag);
|
||||
|
||||
if(isrc is null)
|
||||
continue;
|
||||
|
||||
isrcs[(byte)track.TrackSequence] = Encoding.UTF8.GetString(isrc);
|
||||
isrcs[(byte)track.Sequence] = Encoding.UTF8.GetString(isrc);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1021,12 +1021,12 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
{
|
||||
foreach(Track track in inputOptical.Tracks)
|
||||
{
|
||||
byte[] flags = _inputFormat.ReadSectorTag(track.TrackSequence, tag);
|
||||
byte[] flags = _inputFormat.ReadSectorTag(track.Sequence, tag);
|
||||
|
||||
if(flags is null)
|
||||
continue;
|
||||
|
||||
trackFlags[(byte)track.TrackSequence] = flags[0];
|
||||
trackFlags[(byte)track.Sequence] = flags[0];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1097,15 +1097,15 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
if(sectorsToDo == 1)
|
||||
{
|
||||
sector = _inputFormat.ReadSectorTag(doneSectors, tag);
|
||||
Track track = tracks.LastOrDefault(t => t.TrackStartSector >= doneSectors);
|
||||
Track track = tracks.LastOrDefault(t => t.StartSector >= doneSectors);
|
||||
|
||||
if(tag == SectorTagType.CdSectorSubchannel &&
|
||||
track != null)
|
||||
{
|
||||
bool indexesChanged = CompactDisc.WriteSubchannelToImage(MmcSubchannel.Raw,
|
||||
MmcSubchannel.Raw, sector, doneSectors, 1, null, isrcs,
|
||||
(byte)track.TrackSequence, ref mcn, tracks.ToArray(), subchannelExtents, false,
|
||||
outputFormat, false, false, null, null, smallestPregapLbaPerTrack, false);
|
||||
MmcSubchannel.Raw, sector, doneSectors, 1, null, isrcs, (byte)track.Sequence,
|
||||
ref mcn, tracks.ToArray(), subchannelExtents, false, outputFormat, false,
|
||||
false, null, null, smallestPregapLbaPerTrack, false);
|
||||
|
||||
if(indexesChanged)
|
||||
outputOptical.SetTracks(tracks.ToList());
|
||||
@@ -1118,7 +1118,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
else
|
||||
{
|
||||
sector = _inputFormat.ReadSectorsTag(doneSectors, sectorsToDo, tag);
|
||||
Track track = tracks.LastOrDefault(t => t.TrackStartSector >= doneSectors);
|
||||
Track track = tracks.LastOrDefault(t => t.StartSector >= doneSectors);
|
||||
|
||||
if(tag == SectorTagType.CdSectorSubchannel &&
|
||||
track != null)
|
||||
@@ -1126,7 +1126,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
{
|
||||
bool indexesChanged = CompactDisc.WriteSubchannelToImage(MmcSubchannel.Raw,
|
||||
MmcSubchannel.Raw, sector, doneSectors, sectorsToDo, null, isrcs,
|
||||
(byte)track.TrackSequence, ref mcn, tracks.ToArray(), subchannelExtents, false,
|
||||
(byte)track.Sequence, ref mcn, tracks.ToArray(), subchannelExtents, false,
|
||||
outputFormat, false, false, null, null, smallestPregapLbaPerTrack, false);
|
||||
|
||||
if(indexesChanged)
|
||||
@@ -1192,11 +1192,11 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
foreach(Track track in tracks.TakeWhile(track => !_cancel))
|
||||
{
|
||||
doneSectors = 0;
|
||||
ulong trackSectors = track.TrackEndSector - track.TrackStartSector + 1;
|
||||
ulong trackSectors = track.EndSector - track.StartSector + 1;
|
||||
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
ProgressText = $"Converting sectors in track {track.TrackSequence}";
|
||||
ProgressText = $"Converting sectors in track {track.Sequence}";
|
||||
ProgressValue++;
|
||||
Progress2Text = "";
|
||||
Progress2Indeterminate = false;
|
||||
@@ -1222,7 +1222,7 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
Progress2Text =
|
||||
$"Converting sectors {sectors + track.TrackStartSector} to {sectors + sectorsToDo + track.TrackStartSector} in track {track.TrackSequence} ({(sectors + track.TrackStartSector) / (double)_inputFormat.Info.Sectors:P2} done)";
|
||||
$"Converting sectors {sectors + track.StartSector} to {sectors + sectorsToDo + track.StartSector} in track {track.Sequence} ({(sectors + track.StartSector) / (double)_inputFormat.Info.Sectors:P2} done)";
|
||||
|
||||
Progress2Value = (int)(sectors / SectorsValue);
|
||||
});
|
||||
@@ -1232,29 +1232,28 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
if(useLong)
|
||||
if(sectorsToDo == 1)
|
||||
{
|
||||
sector = _inputFormat.ReadSectorLong(doneSectors + track.TrackStartSector);
|
||||
result = outputFormat.WriteSectorLong(sector, doneSectors + track.TrackStartSector);
|
||||
sector = _inputFormat.ReadSectorLong(doneSectors + track.StartSector);
|
||||
result = outputFormat.WriteSectorLong(sector, doneSectors + track.StartSector);
|
||||
}
|
||||
else
|
||||
{
|
||||
sector = _inputFormat.ReadSectorsLong(doneSectors + track.TrackStartSector,
|
||||
sectorsToDo);
|
||||
sector = _inputFormat.ReadSectorsLong(doneSectors + track.StartSector, sectorsToDo);
|
||||
|
||||
result = outputFormat.WriteSectorsLong(sector, doneSectors + track.TrackStartSector,
|
||||
result = outputFormat.WriteSectorsLong(sector, doneSectors + track.StartSector,
|
||||
sectorsToDo);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(sectorsToDo == 1)
|
||||
{
|
||||
sector = _inputFormat.ReadSector(doneSectors + track.TrackStartSector);
|
||||
result = outputFormat.WriteSector(sector, doneSectors + track.TrackStartSector);
|
||||
sector = _inputFormat.ReadSector(doneSectors + track.StartSector);
|
||||
result = outputFormat.WriteSector(sector, doneSectors + track.StartSector);
|
||||
}
|
||||
else
|
||||
{
|
||||
sector = _inputFormat.ReadSectors(doneSectors + track.TrackStartSector, sectorsToDo);
|
||||
sector = _inputFormat.ReadSectors(doneSectors + track.StartSector, sectorsToDo);
|
||||
|
||||
result = outputFormat.WriteSectors(sector, doneSectors + track.TrackStartSector,
|
||||
result = outputFormat.WriteSectors(sector, doneSectors + track.StartSector,
|
||||
sectorsToDo);
|
||||
}
|
||||
}
|
||||
@@ -1313,13 +1312,13 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
foreach(Track track in tracks.TakeWhile(track => !_cancel))
|
||||
{
|
||||
doneSectors = 0;
|
||||
ulong trackSectors = track.TrackEndSector - track.TrackStartSector + 1;
|
||||
ulong trackSectors = track.EndSector - track.StartSector + 1;
|
||||
byte[] sector;
|
||||
bool result;
|
||||
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
ProgressText = $"Converting tag {tag} in track {track.TrackSequence}.";
|
||||
ProgressText = $"Converting tag {tag} in track {track.Sequence}.";
|
||||
ProgressValue++;
|
||||
Progress2Text = "";
|
||||
Progress2Indeterminate = false;
|
||||
@@ -1331,8 +1330,8 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
case SectorTagType.CdTrackFlags:
|
||||
case SectorTagType.CdTrackIsrc:
|
||||
|
||||
sector = _inputFormat.ReadSectorTag(track.TrackSequence, tag);
|
||||
result = outputFormat.WriteSectorTag(sector, track.TrackSequence, tag);
|
||||
sector = _inputFormat.ReadSectorTag(track.Sequence, tag);
|
||||
result = outputFormat.WriteSectorTag(sector, track.Sequence, tag);
|
||||
|
||||
if(!result)
|
||||
if(ForceChecked)
|
||||
@@ -1374,22 +1373,21 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
Progress2Text =
|
||||
$"Converting tag {tag} for sectors {sectors + track.TrackStartSector} to {sectors + sectorsToDo + track.TrackStartSector} in track {track.TrackSequence} ({(sectors + track.TrackStartSector) / (double)_inputFormat.Info.Sectors:P2} done)";
|
||||
$"Converting tag {tag} for sectors {sectors + track.StartSector} to {sectors + sectorsToDo + track.StartSector} in track {track.Sequence} ({(sectors + track.StartSector) / (double)_inputFormat.Info.Sectors:P2} done)";
|
||||
|
||||
Progress2Value = (int)(sectors / SectorsValue);
|
||||
});
|
||||
|
||||
if(sectorsToDo == 1)
|
||||
{
|
||||
sector = _inputFormat.ReadSectorTag(doneSectors + track.TrackStartSector, tag);
|
||||
result = outputFormat.WriteSectorTag(sector, doneSectors + track.TrackStartSector, tag);
|
||||
sector = _inputFormat.ReadSectorTag(doneSectors + track.StartSector, tag);
|
||||
result = outputFormat.WriteSectorTag(sector, doneSectors + track.StartSector, tag);
|
||||
}
|
||||
else
|
||||
{
|
||||
sector = _inputFormat.ReadSectorsTag(doneSectors + track.TrackStartSector, sectorsToDo,
|
||||
tag);
|
||||
sector = _inputFormat.ReadSectorsTag(doneSectors + track.StartSector, sectorsToDo, tag);
|
||||
|
||||
result = outputFormat.WriteSectorsTag(sector, doneSectors + track.TrackStartSector,
|
||||
result = outputFormat.WriteSectorsTag(sector, doneSectors + track.StartSector,
|
||||
sectorsToDo, tag);
|
||||
}
|
||||
|
||||
|
||||
@@ -445,8 +445,8 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
{
|
||||
DateTime startCheck = DateTime.Now;
|
||||
DateTime endCheck = startCheck;
|
||||
List<ulong> failingLbas = new List<ulong>();
|
||||
List<ulong> unknownLbas = new List<ulong>();
|
||||
List<ulong> failingLbas = new();
|
||||
List<ulong> unknownLbas = new();
|
||||
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
@@ -466,13 +466,12 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
{
|
||||
await Dispatcher.UIThread.InvokeAsync(() =>
|
||||
{
|
||||
ProgressText =
|
||||
$"Verifying track {currentTrack.TrackSequence} of {inputOptical.Tracks.Count}";
|
||||
ProgressText = $"Verifying track {currentTrack.Sequence} of {inputOptical.Tracks.Count}";
|
||||
|
||||
ProgressValue++;
|
||||
});
|
||||
|
||||
ulong remainingSectors = currentTrack.TrackEndSector - currentTrack.TrackStartSector;
|
||||
ulong remainingSectors = currentTrack.EndSector - currentTrack.StartSector;
|
||||
ulong currentSector = 0;
|
||||
|
||||
while(remainingSectors > 0)
|
||||
@@ -496,18 +495,17 @@ namespace Aaru.Gui.ViewModels.Windows
|
||||
Progress2Value = all / 512d;
|
||||
|
||||
Progress2Text =
|
||||
$"Checking sector {all} of {_inputFormat.Info.Sectors}, on track {currentTrack.TrackSequence}";
|
||||
$"Checking sector {all} of {_inputFormat.Info.Sectors}, on track {currentTrack.Sequence}";
|
||||
});
|
||||
|
||||
List<ulong> tempFailingLbas;
|
||||
List<ulong> tempUnknownLbas;
|
||||
|
||||
if(remainingSectors < 512)
|
||||
inputOptical.VerifySectors(currentSector, (uint)remainingSectors,
|
||||
currentTrack.TrackSequence, out tempFailingLbas,
|
||||
out tempUnknownLbas);
|
||||
inputOptical.VerifySectors(currentSector, (uint)remainingSectors, currentTrack.Sequence,
|
||||
out tempFailingLbas, out tempUnknownLbas);
|
||||
else
|
||||
inputOptical.VerifySectors(currentSector, 512, currentTrack.TrackSequence,
|
||||
inputOptical.VerifySectors(currentSector, 512, currentTrack.Sequence,
|
||||
out tempFailingLbas, out tempUnknownLbas);
|
||||
|
||||
failingLbas.AddRange(tempFailingLbas);
|
||||
|
||||
@@ -117,14 +117,14 @@
|
||||
</TabItem.Header>
|
||||
<DataGrid Items="{Binding Tracks}" IsVisible="{Binding !!Tracks.Count}" IsReadOnly="True">
|
||||
<DataGrid.Columns>
|
||||
<DataGridTextColumn Header="Track" Binding="{Binding TrackSequence}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Type" Binding="{Binding TrackType}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Bps" Binding="{Binding TrackBytesPerSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Raw bps" Binding="{Binding TrackRawBytesPerSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Subchannel" Binding="{Binding TrackSubchannelType}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Pregap" Binding="{Binding TrackPregap}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Start" Binding="{Binding TrackStartSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="End" Binding="{Binding TrackEndSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Track" Binding="{Binding Sequence}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Type" Binding="{Binding Type}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Bps" Binding="{Binding BytesPerSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Raw bps" Binding="{Binding RawBytesPerSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Subchannel" Binding="{Binding SubchannelType}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Pregap" Binding="{Binding Pregap}" Width="Auto" />
|
||||
<DataGridTextColumn Header="Start" Binding="{Binding StartSector}" Width="Auto" />
|
||||
<DataGridTextColumn Header="End" Binding="{Binding EndSector}" Width="Auto" />
|
||||
</DataGrid.Columns>
|
||||
</DataGrid>
|
||||
</TabItem>
|
||||
|
||||
Reference in New Issue
Block a user