--- nono/vm/event.cpp 2026/04/29 17:04:35 1.1.1.4 +++ nono/vm/event.cpp 2026/04/29 17:05:10 1.1.1.7 @@ -4,17 +4,23 @@ // Licensed under nono-license.txt // +// +// イベント +// + #include "event.h" #include "scheduler.h" -// 全イベントの配列 -std::vector gEvents; - // コンストラクタ Event::Event() { - // 自身をリストに追加する - gEvents.push_back(this); +} + +// コンストラクタ (dev 指定あり) +Event::Event(Device *dev_) + : Event() +{ + dev = dev_; } // デストラクタ @@ -22,18 +28,19 @@ Event::~Event() { } -// イベントタイマーを開始する +// イベントを登録する void -Event::Start() +Event::Regist() { - gScheduler->StartEvent(this); + gScheduler->RegistEvent(*this); } -// イベントタイマーを停止する +// 名前をセットして、イベントを登録する (便利関数) void -Event::Stop() +Event::Regist(const std::string& name_) { - gScheduler->StopEvent(this); + SetName(name_); + Regist(); } // 名前をセットする @@ -42,7 +49,7 @@ Event::SetName(const std::string& val) { name = val; if (name.length() > 25) { - dev->putmsg("Event Name \"%s\" is too long(%d chars)", + dev->putmsgn("Event Name \"%s\" is too long(%d chars)", name.c_str(), (int)name.length()); name.resize(25); }