spo/ass2/simulator_SIC_XE/include/file_device.h
2025-12-07 11:33:03 +01:00

23 lines
No EOL
475 B
C++

#ifndef FILE_DEVICE_H
#define FILE_DEVICE_H
#include "device.h"
#include <fstream>
#include <string>
class FileDevice : public Device {
public:
explicit FileDevice(const std::string &filename);
~FileDevice();
unsigned char read() override;
void write(unsigned char value) override;
private:
void ensureFileOpen();
std::fstream fileStream;
std::string filename;
bool fileCreated;
std::streampos readPosition;
};
#endif // FILE_DEVICE_H