#include "act/controller.h" #include "act/root.h" #include "code/provider.h" #include 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; }