|
|
1.1 ! root 1: // ! 2: // nono ! 3: // Copyright (C) 2021 nono project ! 4: // Licensed under nono-license.txt ! 5: // ! 6: ! 7: #pragma once ! 8: ! 9: #include "autofd.h" ! 10: #include "diskimage.h" ! 11: ! 12: // ディスクイメージ (生イメージ形式) ! 13: class DiskImageRaw : public DiskImage ! 14: { ! 15: using inherited = DiskImage; ! 16: public: ! 17: DiskImageRaw(const std::string& pathname_); ! 18: virtual ~DiskImageRaw() override; ! 19: ! 20: int GetInfo(off_t *, bool *) override; ! 21: bool Open(bool read_only) override; ! 22: bool Read(void *buf, off_t offset, size_t size) override; ! 23: bool Write(const void *buf, off_t offset, size_t size) override; ! 24: void Close() override; ! 25: off_t GetSize() const override; ! 26: ! 27: private: ! 28: autofd fd {}; ! 29: uint8 *mem {}; ! 30: off_t memlen {}; ! 31: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.