Skip to content

Commit

Permalink
Replace vector by span
Browse files Browse the repository at this point in the history
  • Loading branch information
uweseimet committed Sep 7, 2023
1 parent 2a596bf commit f16b943
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 14 deletions.
4 changes: 2 additions & 2 deletions cpp/devices/disk.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -497,7 +497,7 @@ void Disk::AddCachePage(map<int, vector<byte>>& pages, bool changeable) const
pages[8] = buf;
}

int Disk::Read(vector<uint8_t>& buf, uint64_t block)
int Disk::Read(span<uint8_t> buf, uint64_t block)
{
assert(block < GetBlockCount());

Expand All @@ -510,7 +510,7 @@ int Disk::Read(vector<uint8_t>& buf, uint64_t block)
return GetSectorSizeInBytes();
}

void Disk::Write(const vector<uint8_t>& buf, uint64_t block)
void Disk::Write(span<const uint8_t> buf, uint64_t block)
{
assert(block < GetBlockCount());

Expand Down
4 changes: 2 additions & 2 deletions cpp/devices/disk.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,9 @@ class Disk : public StorageDevice, private ScsiBlockCommands

bool Eject(bool) override;

virtual void Write(const vector<uint8_t>&, uint64_t);
virtual void Write(span<const uint8_t>, uint64_t);

virtual int Read(vector<uint8_t>& , uint64_t);
virtual int Read(span<uint8_t> , uint64_t);

uint32_t GetSectorSizeInBytes() const;
bool IsSectorSizeConfigurable() const { return !sector_sizes.empty(); }
Expand Down
4 changes: 2 additions & 2 deletions cpp/devices/disk_cache.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ shared_ptr<DiskTrack> DiskCache::GetTrack(uint32_t block)
return Assign(track);
}

bool DiskCache::ReadSector(vector<uint8_t>& buf, uint32_t block)
bool DiskCache::ReadSector(span<uint8_t> buf, uint32_t block)
{
shared_ptr<DiskTrack> disktrk = GetTrack(block);
if (disktrk == nullptr) {
Expand All @@ -57,7 +57,7 @@ bool DiskCache::ReadSector(vector<uint8_t>& buf, uint32_t block)
return disktrk->ReadSector(buf, block & 0xff);
}

bool DiskCache::WriteSector(const vector<uint8_t>& buf, uint32_t block)
bool DiskCache::WriteSector(span<const uint8_t> buf, uint32_t block)
{
shared_ptr<DiskTrack> disktrk = GetTrack(block);
if (disktrk == nullptr) {
Expand Down
5 changes: 3 additions & 2 deletions cpp/devices/disk_cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@

#pragma once

#include <span>
#include <array>
#include <memory>
#include <string>
Expand All @@ -41,8 +42,8 @@ class DiskCache

// Access
bool Save() const; // Save and release all
bool ReadSector(vector<uint8_t>&, uint32_t); // Sector Read
bool WriteSector(const vector<uint8_t>&, uint32_t); // Sector Write
bool ReadSector(span<uint8_t>, uint32_t); // Sector Read
bool WriteSector(span<const uint8_t>, uint32_t); // Sector Write

private:

Expand Down
4 changes: 2 additions & 2 deletions cpp/devices/disk_track.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ bool DiskTrack::Save(const string& path)
return true;
}

bool DiskTrack::ReadSector(vector<uint8_t>& buf, int sec) const
bool DiskTrack::ReadSector(span<uint8_t> buf, int sec) const
{
assert(sec >= 0 && sec < 0x100);

Expand All @@ -238,7 +238,7 @@ bool DiskTrack::ReadSector(vector<uint8_t>& buf, int sec) const
return true;
}

bool DiskTrack::WriteSector(const vector<uint8_t>& buf, int sec)
bool DiskTrack::WriteSector(span<const uint8_t> buf, int sec)
{
assert((sec >= 0) && (sec < 0x100));
assert(!dt.raw);
Expand Down
5 changes: 3 additions & 2 deletions cpp/devices/disk_track.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#pragma once

#include <cstdlib>
#include <span>
#include <vector>
#include <string>

Expand Down Expand Up @@ -52,8 +53,8 @@ class DiskTrack
bool Save(const string& path);

// Read / Write
bool ReadSector(vector<uint8_t>&, int) const; // Sector Read
bool WriteSector(const vector<uint8_t>& buf, int); // Sector Write
bool ReadSector(span<uint8_t>, int) const; // Sector Read
bool WriteSector(span<const uint8_t> buf, int); // Sector Write

int GetTrack() const { return dt.track; } // Get track
};
2 changes: 1 addition & 1 deletion cpp/devices/scsicd.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ void SCSICD::AddVendorPage(map<int, vector<byte>>& pages, int page, bool changea
}
}

int SCSICD::Read(vector<uint8_t>& buf, uint64_t block)
int SCSICD::Read(span<uint8_t> buf, uint64_t block)
{
CheckReady();

Expand Down
2 changes: 1 addition & 1 deletion cpp/devices/scsicd.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class SCSICD : public Disk, private ScsiMmcCommands
void Open() override;

vector<uint8_t> InquiryInternal() const override;
int Read(vector<uint8_t>&, uint64_t) override;
int Read(span<uint8_t>, uint64_t) override;

protected:

Expand Down

0 comments on commit f16b943

Please sign in to comment.