MGL(Win32)
読み取り中…
検索中…
一致する文字列を見つけられません
mgl_event_notifier.h
[詳解]
1// SPDX-License-Identifier: Zlib
2/* ------------------------------------------------------------------------- */
9/* ------------------------------------------------------------------------- */
10
11#ifndef INCGUARD_MGL_EVENT_NOTIFIER_H_1608698055
12#define INCGUARD_MGL_EVENT_NOTIFIER_H_1608698055
13
14#include <array>
15
21
22
23namespace MGL::Event
24{
26class Notifier final : public SharedSingleton<Notifier>
27{
28public:
30
31 Notifier() noexcept;
32
33 bool Register(Handle &handle, NotifyType type, CallbackFunction callback, void *callbackArg = nullptr) noexcept;
34 void Unregister(Handle &handle) noexcept;
35
36 bool Notify(NotifyType type, void *notifyArg = nullptr) noexcept;
37
38private:
39 RegisterList *GetRegisterList(NotifyType type) noexcept;
40
41 std::array<RegisterList, kValidNotifyTypeCount> _registerListArray;
42};
43} // namespace MGL::Event
44
45#endif // INCGUARD_MGL_EVENT_NOTIFIER_H_1608698055
46
47// vim: et ts=4 sw=4 sts=4
イベントハンドルクラス
Definition mgl_event_handle.h:21
MGL イベント通知
Definition mgl_event_notifier.h:27
bool Notify(NotifyType type, void *notifyArg=nullptr) noexcept
イベント通知の実行
Definition mgl_event_notifier.cc:125
void Unregister(Handle &handle) noexcept
イベント通知の登録解除
Definition mgl_event_notifier.cc:94
bool Register(Handle &handle, NotifyType type, CallbackFunction callback, void *callbackArg=nullptr) noexcept
イベント通知の登録
Definition mgl_event_notifier.cc:50
Notifier() noexcept
コンストラクタ
Definition mgl_event_notifier.cc:33
static STL::unique_ptr< Notifier > & GetInstanceRef() noexcept
インスタンスの取得
Definition mgl_event_notifier.cc:21
登録リスト
Definition mgl_event_register_list.h:36
シングルトンテンプレート(共有ライブラリ用)
Definition mgl_singleton.h:44
MGL イベントハンドル
MGL イベント登録リスト
MGL イベント 型定義
NotifyType
通知タイプ
Definition mgl_event_types.h:21
void(*)(void *callbackArg, void *notifyArg) CallbackFunction
イベントコールバック関数
Definition mgl_event_types.h:68
MGL シングルトンクラス
MGL STLのメモリ関連の代替
std::unique_ptr< T, Deleter > unique_ptr
MGLのアロケータを利用するユニークポインタ
Definition mgl_stl_memory.h:247