/*! * @file mover_trigger_event_list.h * A List to handle several events, caused by mover triggers. */ #ifndef _MOVER_TRIGGER_EVENT_LIST_H #define _MOVER_TRIGGER_EVENT_LIST_H #include "mover_trigger.h" #include "mover_trigger_pointer_list.h" class MoverTrigger; class MoverTriggerPointerList; class MoverTriggerEventListElement { public: MoverTriggerEventListElement(MoverTrigger *trigger); ~MoverTriggerEventListElement(); MoverTrigger *trigger; MoverTriggerEventListElement *next; }; class MoverTriggerEventList { public: // static MoverTriggerEventList *getListPointer(); void addTrigger(MoverTrigger *trigger); void removeTrigger(MoverTrigger *trigger); bool isEmpty(); bool isTriggered(const std::string& triggerName); MoverTriggerPointerList *getPointerList(const std::string& triggerName); // protected: MoverTriggerEventList(); ~MoverTriggerEventList(); private: MoverTriggerEventListElement *first; // static MoverTriggerEventList *listPointer; }; #endif