23 #ifndef SRC_CONFIGURATION_KEYHANDLERREGISTRY_HPP_
24 #define SRC_CONFIGURATION_KEYHANDLERREGISTRY_HPP_
28 #include <boost/function.hpp>
29 #include <boost/bind.hpp>
37 namespace application {
51 typedef std::pair<std::string, boost::function<void ()> >
Handler;
63 #define MAKE_KEYHANDLER(KEY, DESCRIPTION, METHOD) std::make_pair((char)(KEY), std::make_pair( (DESCRIPTION), (METHOD) ) )
76 #define REGISTER_KEY_HANDLER(KEY, DESCRIPTION, METHOD) key_handler_map.insert(std::make_pair((char)(KEY), std::make_pair( (DESCRIPTION), boost::bind(METHOD, this ) ) ) )
110 template<
class SlotClass>
111 void registerKeyhandler(
char key_, std::string description_,
void (SlotClass::*function_)(
void), SlotClass *obj_) {
113 key_handler_map.insert(std::make_pair((
char) (key_), std::make_pair((description_), boost::bind(function_, obj_))));
void keyhandlerSlowDown(void)
std::string changeInputMode(unsigned char finishKey_)
KeyHandlerMap key_handler_map
std::pair< char, Handler > KeyHandler
Basic handler type representing <key, description, handler function> triplet.
void keyhandlerQuit(void)
void keyhandlerFastenUp(void)
std::map< char, Handler > KeyHandlerMap
Basic type storing <key, description, handler function> triplets.
Contains definitions of main logger-related macros.
std::pair< std::string, boost::function< void()> > Handler
Basic handler type representing <description, handler function> pair.
void keyhandlerDisplayOptions(void)
void keyhandlerDecrementLoggerLevel(void)
ApplicationState declaration.
virtual ~KeyHandlerRegistry()
void keyhandlerIncrementLoggerLevel(void)
void keyhandlerSingleStep(void)
void keyhandlerPause(void)
void keyhandlerToggleLearning(void)
Abstract class responsible for handling the keypressed callbacks. Implements several basic callbacks ...
virtual void keyboardHandler(unsigned char key)
void registerKeyhandler(char key_, std::string description_, void(SlotClass::*function_)(void), SlotClass *obj_)
void keyhandlerResetProcessingTime(void)
void keyhandlerDisplayAppState(void)