--- nono/vm/scsidev.h 2026/04/29 17:05:18 1.1.1.14 +++ nono/vm/scsidev.h 2026/04/29 17:05:25 1.1.1.16 @@ -37,7 +37,7 @@ class SCSIDevice : public IODevice using inherited = IODevice; public: SCSIDevice(int objid_); - virtual ~SCSIDevice() override; + ~SCSIDevice() override; // バスに接続 (SCSIBus::Attach から呼ばれる) void Attach(SCSIBus *bus_, int id) { @@ -130,7 +130,7 @@ class SCSIHostDevice : public SCSIDevice using inherited = SCSIDevice; public: SCSIHostDevice(int objid_); - virtual ~SCSIHostDevice() override; + ~SCSIHostDevice() override; bool Create() override; bool Init() override; @@ -150,7 +150,7 @@ class SCSIHostDevice : public SCSIDevice } // SCSIBus を取得 (UI からインジケータ表示用) - std::shared_ptr GetSCSIBus() const { return scsibus; } + SCSIBus *GetSCSIBus() const { return scsibus.get(); } protected: DECLARE_MONITOR_CALLBACK(MonitorUpdateDevs); @@ -188,7 +188,7 @@ class SCSIHostDevice : public SCSIDevice // ID0 ||<----> bus |<----------+ // || +----------+ own // - std::shared_ptr scsibus {}; + std::unique_ptr scsibus {}; std::unique_ptr target[8] {}; // 接続中のデバイス(イニシエータ含む)を ID 順に並べたリスト (モニタ用) @@ -206,7 +206,7 @@ class SCSITarget : public SCSIDevice using inherited = SCSIDevice; public: SCSITarget(SCSIHostDevice *h, int id); - virtual ~SCSITarget() override; + ~SCSITarget() override; void ResetHard(bool poweron) override; @@ -305,7 +305,7 @@ class SCSIDisk : public SCSITarget public: SCSIDisk(SCSIHostDevice *h, int id, SCSI::DevType type); - virtual ~SCSIDisk() override; + ~SCSIDisk() override; bool Init() override; void ResetHard(bool poweron) override; @@ -382,8 +382,8 @@ class SCSIDisk : public SCSITarget void MediaChanged() const; // メディア挿入/排出コールバック - void LoadCallback(MessageID, uint32); - void UnloadCallback(MessageID, uint32); + void LoadMessage(MessageID, uint32); + void UnloadMessage(MessageID, uint32); // イメージファイルのフルパス std::string pathname {};