cpp_launchpad/compile/act/root.h

26 lines
682 B
C++

#ifndef ACT_ROOT
#define ACT_ROOT
#include "act/controller.h"
#include "allocate/factory.h"
#include <vector>
class root_controller_t : public controller_t {
public:
enum mode_t {
cli,
app,
game
};
struct configuration_t {
mode_t mode_m;
};
root_controller_t(configuration_t* configuration_p);
controller_t::status_t on_event(event_t event_p) override;
private:
mode_t mode_m;
};
class root_controller_factory_t : public factory_t<root_controller_t::configuration_t, root_controller_t> {
root_controller_t* create(root_controller_t::configuration_t* configuration_p) override;
factory_t::status_t dispose(root_controller_t* root_controller_p) override;
};
#endif