--- nono/lib/monitor.h 2026/04/29 17:05:22 1.1.1.6 +++ nono/lib/monitor.h 2026/04/29 17:05:26 1.1.1.7 @@ -24,36 +24,36 @@ enum { }; // 識別子 (n番目で指定) -static constexpr int ID_MONITOR_ATC(int n) { +static constexpr uint ID_MONITOR_ATC(uint n) { return ID_MONITOR_ATC0 + n; } -static constexpr int ID_MONITOR_CMMU(int n) { +static constexpr uint ID_MONITOR_CMMU(uint n) { return ID_MONITOR_CMMU0 + n; } -static constexpr int ID_MONITOR_HOSTNET(int n) { +static constexpr uint ID_MONITOR_HOSTNET(uint n) { return ID_MONITOR_HOSTNET0 + n; } -static constexpr int ID_SUBWIN_CACHE(int n) { +static constexpr uint ID_SUBWIN_CACHE(uint n) { return ID_SUBWIN_CACHE0 + n; } -static constexpr int ID_MONITOR_MEMDUMP(int n) { +static constexpr uint ID_MONITOR_MEMDUMP(uint n) { return ID_MONITOR_MEMDUMP0 + n; } -static constexpr int ID_MONITOR_RTL8019AS(int n) { +static constexpr uint ID_MONITOR_RTL8019AS(uint n) { return ID_MONITOR_RTL8019AS0 + n; } -static constexpr int ID_MONITOR_VIRTIO_BLOCK(int n) { +static constexpr uint ID_MONITOR_VIRTIO_BLOCK(uint n) { return ID_MONITOR_VIRTIO_BLOCK0 + n; } -static constexpr int ID_MONITOR_XPMEMDUMP(int n) { +static constexpr uint ID_MONITOR_XPMEMDUMP(uint n) { return ID_MONITOR_XPMEMDUMP0 + n; } // 判定 -static constexpr bool IS_MONITOR_MEMDUMP(int id) { +static constexpr bool IS_MONITOR_MEMDUMP(uint id) { return (ID_MONITOR_MEMDUMP0 <= id && id < ID_MONITOR_MEMDUMP(MAX_MEMDUMP_MONITOR)); } -static constexpr bool IS_MONITOR_XPMEMDUMP(int id) { +static constexpr bool IS_MONITOR_XPMEMDUMP(uint id) { return (ID_MONITOR_XPMEMDUMP0 <= id && id < ID_MONITOR_XPMEMDUMP(MAX_XPMEMDUMP_MONITOR)); } @@ -74,18 +74,18 @@ class Monitor { public: Monitor(); - Monitor(Object *obj_); - virtual ~Monitor(); + explicit Monitor(Object *obj_); + ~Monitor(); Object *obj {}; // オブジェクト MonitorCallback_t func {}; // コールバック関数 - int GetId() const { return id; } + uint GetId() const { return id; } // モニターの表示サイズを設定・取得。 void SetSize(nnSize size_) { size = size_; } void SetSize(int col_, int row_) { SetSize(nnSize(col_, row_)); } - virtual nnSize GetSize() const { return size; } + nnSize GetSize() const { return size; } // モニターが縦に可変長の場合の最大表示行数。(固定長なら 0) void SetMaxHeight(int maxh_) { maxh = maxh_; } @@ -95,20 +95,20 @@ class Monitor // モニタの登録はコンストラクタおよび Create フェーズまでに行うこと。 // Create() の後、Init() より前に -M オプションの処理があるため。 // see wx/wxapp.cpp - void Regist(int id); + void Regist(uint id); // 削除。 void Unregist(); // ID を表示用文字列にして返す。 - static const char *GetIdText(int id); + static const char *GetIdText(uint id); // このモニターの ID を表示用文字列にして返す。 const char *GetIdText() const { return GetIdText(id); } private: // モニター識別子 - int id; + uint id; // モニターサイズ nnSize size {}; @@ -117,7 +117,7 @@ class Monitor int maxh {}; // ID を表示用のテキストにしたものとの対応表。 - static const std::vector> idtext; + static const std::vector> idtext; }; // @@ -129,7 +129,7 @@ class MonitorManager // モニター情報 (事前定義) struct MonitorInfo { - int id; + uint id; VMCap vmcap; std::vector aliases; }; @@ -143,7 +143,7 @@ class MonitorManager // 指定された id を持つモニターを返す。 // こっちは、なければ assert する。 - Monitor& Get(int id) const { + Monitor& Get(uint id) const { for (auto mon : list) { if (mon->GetId() == id) { return *mon; @@ -154,7 +154,7 @@ class MonitorManager // 指定された id を持つモニターを返す。 // こっちは、なければ NULL を返す。 - Monitor *Find(int id) const { + Monitor *Find(uint id) const { for (auto mon : list) { if (mon->GetId() == id) { return mon; @@ -164,20 +164,20 @@ class MonitorManager } // 指定された id に対応する機種ケーパビリティを返す。 - VMCap GetVMCap(int id) const { - assert(0 <= id && id < info.size()); + VMCap GetVMCap(uint id) const { + assert(id < info.size()); return info[id].vmcap; } // 指定された id に対応する名前のリストを返す。 // id が範囲外だと assert する。 - const std::vector& GetAliases(int id) const { - assert(0 <= id && id < info.size()); + const std::vector& GetAliases(uint id) const { + assert(id < info.size()); return info[id].aliases; } // id リストから一覧表示用の文字列を生成して返す - static std::string MakeListString(std::vector list); + static std::string MakeListString(std::vector list); // 以降の追加を禁止する (プログラムミスを避けるため) void Fix();