#define __COMMAND_CALLABLE_H
#include <string>
+#include <functional>
namespace command {
/**
/**
* Function handling user Arguments
*/
- void (*func)(ParameterType);
+// void (*func)(ParameterType);
+ std::function<void(ParameterType)> func;
public:
/**
*
* @param function Function that will be invoked
*/
- Callable(void (*function)(ParameterType))
+// Callable(void (*function)(ParameterType))
+// : func(function) {
+// }
+
+ Callable(std::function<void(ParameterType)> function)
: func(function) {
}
/**
* Function handling user Arguments
*/
- void (*func)(void);
+// void (*func)(void);
+ std::function<void(void)> func;
public:
/**
*
* @param function Function that will be invoked
*/
- Callable(void (*function)(void))
+// Callable(void (*function)(void))
+// : func(function) {
+// }
+
+ Callable(std::function<void(void)> function)
: func(function) {
}
+
virtual ~Callable() { }
protected: