Boost.MSM(5) - イベントクラスの定義

公開:2013-01-12 21:16
更新:2020-02-15 04:37
カテゴリ:boost,c++,windows

Boost.MSMにおけるイベントの定義。状態マシンのprocess_event()の引数に渡すことにより、状態マシンの状態?により遷移が起こる。イベントもやっぱり型で持つのである。


    namespace ev 
    {
      struct Init {}; // 初期化イベント
      struct OpenURL  // ファイルを開くイベント
      {
        explicit OpenURL(std::wstring& url) : url_(url) {}
        const std::wstring& url() const {return url_;}
      private:
        std::wstring url_;
      };
      struct Play {};// 演奏開始
      struct End {};// 終了
      struct Pause {};// 一時停止
      struct Stop {};// 停止
      struct Close {};// 閉じる
    }