--- /dev/null
+#ifndef COMMAND_H_
+#define COMMAND_H_
+
+#include <string>
+#include <sigc++/sigc++.h>
+#include "constants.h"
+
+namespace Marklin {
+
+class Command
+{
+public:
+ sigc::signal<void, Error, const std::string &> signal_done;
+
+ Command(const std::string &c): cmd(c), sent(false) { }
+ void set_sent(bool s) { sent=s; }
+ const std::string &get_command() const { return cmd; }
+ bool get_sent() const { return sent; }
+private:
+ std::string cmd;
+ bool sent;
+};
+
+} // namespace Marklin
+
+#endif