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