24 static constexpr unsigned MAX_HD = 26;
32 [[nodiscard]]
const std::string&
getName()
const {
return name; }
41 template<
typename Archive>
42 void serialize(Archive& ar,
unsigned version);
49 std::span<SectorBuffer> buffers,
size_t startSector)
override;
50 void writeSectorImpl(
size_t sector,
const SectorBuffer& buf)
override;
51 [[nodiscard]]
size_t getNbSectorsImpl()
const override;
52 [[nodiscard]]
bool isWriteProtectedImpl()
const override;
57 [[nodiscard]] std::string_view getContainerName()
const override;
58 [[nodiscard]]
bool diskChanged()
override;
59 int insertDisk(
const std::string& newFilename)
override;
62 [[nodiscard]] uint8_t* getData(
size_t offset,
size_t size)
override;
63 [[nodiscard]]
bool isCacheStillValid(time_t& time)
override;
65 void showProgress(
size_t position,
size_t maxPosition);
70 std::optional<HDCommand> hdCommand;
71 std::optional<TigerTree> tigerTree;
77 std::shared_ptr<HDInUse> hdInUse;
79 uint64_t lastProgressTime;
This class represents a filename.
const Filename & getImageName() const
static std::shared_ptr< HDInUse > getDrivesInUse(MSXMotherBoard &motherBoard)
void switchImage(const Filename &filename)
std::string getTigerTreeHash()
void getMediaInfo(TclObject &result) override
This method gets called when information is required on the media inserted in the media slot of the p...
MSXMotherBoard & getMotherBoard() const
std::bitset< MAX_HD > HDInUse
const std::string & getName() const
void serialize(Archive &ar, unsigned version)
static constexpr unsigned MAX_HD
This class represents the result of a sha1 calculation (a 160-bit value).
The TigerTree class will query the to-be-hashed data via this abstract interface.
This file implemented 3 utility functions: