/* client/control.h This file is part of the Osirion project and is distributed under the terms and conditions of the GNU General Public License version 2 */ #ifndef __INCLUDED_CLIENT_CONTROL_H__ #define __INCLUDED_CLIENT_CONTROL_H__ #include namespace client { /** * @brief a client key control. * A Control maps commands to key names */ class Control { public: Control(const char *name, const char *command, const char * keyname = 0); ~Control(); inline const std::string &name() const { return _name; } inline const std::string & command() const { return _command; } inline const std::string & keyname() const { return _keyname; } inline void set_keyname(const std::string &keyname) { _keyname.assign(keyname); } private: std::string _name; std::string _command; std::string _keyname; }; } // namespace client #endif // __INCLUDED_CLIENT_CONTROL_H__