#ifndef command_h #define command_h #include #include #include #include "message.h" #include namespace eir { class CommandRegistry : public paludis::InstantiationPolicy, public paludis::PrivateImplementationPattern { public: typedef std::function handler; typedef struct _id { } *id; void dispatch(const Message *, bool = false); id add_handler(Filter, const handler &, bool = false, Message::Order = Message::normal); void remove_handler(id); CommandRegistry(); ~CommandRegistry(); }; } #endif