メインページ | ネームスペース一覧 | クラス階層 | アルファベット順一覧 | 構成 | ファイル一覧 | ネームスペースメンバ | 構成メンバ | ファイルメンバ

events.hh

説明を見る。
00001 #ifndef EVENTS_HH_
00002 # define EVENTS_HH_
00003 
00004 #include <map>
00005 
00006 namespace events
00007 {
00008   class EventManager;
00009   class EventHandler;
00010 
00011   class EventManager
00012   {
00013   public:
00014     typedef std::map<EventHandler *, int> EventPriorities;
00015     typedef std::map<int, EventPriorities> Events;
00016 
00017   public:
00018     EventManager();
00019     ~EventManager();
00020 
00021     void register_event(EventHandler &eh, int event_id, int priority = 0);
00022     void unregister_event(EventHandler &eh, int event_id, int priority = 0);
00023     void run_event(int event_id);
00024 
00025     const Events &get_events() const;
00026 
00027   protected:
00028     Events _events;
00029   };
00030 
00031   class EventHandler
00032   {
00033   public:
00034     EventHandler();
00035     ~EventHandler();
00036 
00037     virtual void run_event(EventManager &em, int event_id);
00038 
00039   protected:
00040     void register_event(EventManager &em, int event_id, int priority = 0);
00041     void unregister_event(EventManager &em, int event_id, int priority = 0);
00042   };
00043 }
00044 
00045 # include "events.hxx"
00046 
00047 #endif

Cronous Emulatorに対してWed Aug 17 06:01:22 2005に生成されました。  doxygen 1.4.2-20050421