11#ifndef INCGUARD_MGL_EVENT_REGISTER_LIST_H_1608699070 
   12#define INCGUARD_MGL_EVENT_REGISTER_LIST_H_1608699070 
   14#include <condition_variable> 
   43    bool Execute(
void *notifyArg) 
noexcept;
 
   48    bool IsRunning() 
const noexcept;
 
   49    bool IsRunning(
UniqueID id) 
const noexcept;
 
   50    bool IsSameThread() 
const noexcept;
 
   52    void ApplyTemporaryRegisterList() 
noexcept;
 
   53    void ApplyTemporaryUnregisterList() 
noexcept;
 
   54    bool IsRequestedUnregister(
UniqueID id) 
noexcept;
 
   57    ItemList _temporaryRegisterList;
 
   60    std::atomic<std::thread::id> _currentThreadId;
 
   61    std::mutex _activeListMutex;
 
   62    std::mutex _temporaryListMutex;
 
   64    std::condition_variable _syncExecute;
 
   65    std::mutex _syncExecuteMutex;
 
 
イベントハンドルクラス
Definition mgl_event_handle.h:21
 
登録リスト
Definition mgl_event_register_list.h:36
 
void Unregister(Handle &handle) noexcept
リストから登録解除
Definition mgl_event_register_list.cc:61
 
RegisterList() noexcept
コンストラクタ
Definition mgl_event_register_list.cc:22
 
bool Register(STL::unique_ptr< RegisterItem > item) noexcept
リストに登録
Definition mgl_event_register_list.cc:36
 
bool Execute(void *notifyArg) noexcept
登録済みのイベントを実行
Definition mgl_event_register_list.cc:105
 
NotifyType
通知タイプ
Definition mgl_event_types.h:21
 
void(*)(void *callbackArg, void *notifyArg) CallbackFunction
イベントコールバック関数
Definition mgl_event_types.h:68
 
uintptr_t UniqueID
イベント通知のユニークID型
Definition mgl_event_types.h:65
 
std::list< T, Allocator< T > > list
std::listの代替
Definition mgl_stl_containers.h:47
 
std::unique_ptr< T, Deleter > unique_ptr
MGLのアロケータを利用するユニークポインタ
Definition mgl_stl_memory.h:256
 
登録アイテム
Definition mgl_event_register_list.h:27
 
CallbackFunction callback
コールバック関数
Definition mgl_event_register_list.h:30
 
NotifyType type
通知タイプ
Definition mgl_event_register_list.h:29
 
void * callbackArg
コールバック関数に渡す引数
Definition mgl_event_register_list.h:31