61 lines
1.8 KiB
C++
61 lines
1.8 KiB
C++
#include "act/controller.h"
|
|
#include "act/root.h"
|
|
#include "code/provider.h"
|
|
#include <vector>
|
|
int main(int argc, char *argv[]) {
|
|
// Create text service.
|
|
text_service_factory_t text_service_factory_l;
|
|
text_service_t::configuration_t text_service_configuration_l;
|
|
text_service_configuration_l.language_m = text_service_t::language_t::english;
|
|
text_service_t* text_service_l = text_service_factory_l.create(
|
|
&text_service_configuration_l
|
|
).value_m;
|
|
|
|
// Create window service.
|
|
window_service_factory_t window_service_factory_l;
|
|
window_service_t::configuration_t window_service_configuration_l;
|
|
window_service_t* window_service_l = window_service_factory_l.create(
|
|
&window_service_configuration_l
|
|
).value_m;
|
|
|
|
// Create provider.
|
|
provider_factory_t provider_factory_l;
|
|
provider_t::configuration_t provider_configuration_l;
|
|
provider_configuration_l.text_service_m = text_service_l;
|
|
provider_configuration_l.window_service_m = window_service_l;
|
|
provider_t* provider_l = provider_factory_l.create(
|
|
&provider_configuration_l
|
|
).value_m;
|
|
|
|
// Create root controller.
|
|
root_controller_factory_t root_controller_factory_l;
|
|
root_controller_t::configuration_t root_controller_configuration_l;
|
|
root_controller_configuration_l.provider_m = provider_l;
|
|
root_controller_t* root_controller_l = root_controller_factory_l.create(
|
|
&root_controller_configuration_l
|
|
).value_m;
|
|
|
|
// Start root controller.
|
|
controller_t::error_t root_controller_event_l = root_controller_l->on_event(
|
|
controller_t::event_t::start
|
|
).error_m;
|
|
|
|
// Clean up
|
|
root_controller_factory_l.dispose(
|
|
root_controller_l
|
|
);
|
|
provider_factory_l.dispose(
|
|
provider_l
|
|
);
|
|
window_service_factory_l.dispose(
|
|
window_service_l
|
|
);
|
|
text_service_factory_l.dispose(
|
|
text_service_l
|
|
);
|
|
if (root_controller_event_l == controller_t::error_t::none) {
|
|
return 0;
|
|
}
|
|
return 1;
|
|
}
|