14 class CommandController;
15 class StateChangeDistributor;
20 class DiskManipulator;
31 const std::string& driveName,
52 virtual int insertDisk(
const std::string& filename);
55 void changeDisk(std::unique_ptr<Disk> newDisk);
60 template<
typename Archive>
61 void serialize(Archive& ar,
unsigned version);
64 void init(
const std::string& prefix,
bool createCmd);
65 void insertDisk(
const std::vector<TclObject>& args);
67 void sendChangeDiskEvent(
const std::vector<std::string>& args);
70 virtual void signalStateChange(
const std::shared_ptr<StateChange>& event);
80 const std::string driveName;
81 std::unique_ptr<Disk> disk;
84 std::unique_ptr<DiskCommand> diskCommand;