/** * @name core_reset * @brief destroys core as well as resets preset variables * @retval NONE */ void core_reset() { core_destroy(); do_sizing = true; show_preload = true; preload_hide_frame_count = 0; }
int main(gint argc, gchar* argv[]) { GError* err = NULL; // initialize core_log("core", LOG_NOTICE, 1111, "initializing core"); core_init(); // determine essential things core_log("core", LOG_INFO, 1111, "checking environment"); if (!core_options_environment(&err)) { core_log("core", LOG_ERR, 1111, err->message); g_error_free(err); core_destroy(); return 2; } // treat cmd-line options core_log("core", LOG_INFO, 1111, "parsing command line"); if (!core_options_treat(argc, argv, &err)) { core_log("core", LOG_ERR, 1111, err->message); g_error_free(err); core_destroy(); return 3; } // init config provider core_log("core", LOG_INFO, 1111, "initializing configuration"); if (!core_config_provider_init()) { core_log("core", LOG_CRIT, 1111, "cannot initialize config provider"); core_destroy(); return 4; } // do config preloading core_log("core", LOG_INFO, 1111, "loading configuration"); core_config_preload(); // init logger provider core_log("core", LOG_INFO, 1111, "initializing log provider"); if (!core_log_provider_init()) { core_log("core", LOG_ERR, 1111, "cannot initialize log provider"); core_config_provider_destroy(); core_destroy(); return 1111; } core_log("core", LOG_INFO, 1111, "logging system initialized"); // init queue provider core_log("core", LOG_INFO, 1111, "initializing queue provider"); if (!core_queue_provider_init(&err)) { core_log("core", LOG_CRIT, 1111, "cannot initialize queue provider"); g_error_free(err); core_log_provider_destroy(); core_config_provider_destroy(); core_destroy(); return 5; } // load message handling modules core_log("core", LOG_INFO, 1111, "initializing msg input module"); if (!core_messaging_module_init(MODULE_TYPE_MESSAGE_INPUT, &err)) { core_log("core", LOG_ERR, 1111, err->message); g_error_free(err); core_queue_provider_destroy(); core_log_provider_destroy(); core_config_provider_destroy(); core_destroy(); return 6; } core_log("core", LOG_INFO, 1111, "initializing msg output module"); if (!core_messaging_module_init(MODULE_TYPE_MESSAGE_OUTPUT, &err)) { core_log("core", LOG_ERR, 1111, err->message); g_error_free(err); core_queue_provider_destroy(); core_log_provider_destroy(); core_config_provider_destroy(); core_destroy(); return 7; } core_log("core", LOG_INFO, 1111, "initializing msg trash module"); if (!core_messaging_module_init(MODULE_TYPE_MESSAGE_TRASH, &err)) { core_log("core", LOG_ERR, 1111, err->message); g_error_free(err); core_queue_provider_destroy(); core_log_provider_destroy(); core_config_provider_destroy(); core_destroy(); return 8; } // init messaging framework core_log("core", LOG_INFO, 1111, "initializing messaging"); core_messaging_init(); // start messaging framework core_log("core", LOG_NOTICE, 1111, "starting messaging"); core_messaging_start(); // destroy messaging framework core_log("core", LOG_INFO, 1111, "destroying messaging"); core_messaging_destroy(); // destroy queue provider core_log("core", LOG_INFO, 1111, "destroying queue provider"); core_queue_provider_destroy(); // destroy log provider core_log("core", LOG_INFO, 1111, "destroying logging provider"); core_log_provider_destroy(); // destroy config core_log("core", LOG_INFO, 1111, "destroying config provider"); core_config_provider_destroy(); // do cleanup (options & modules) core_log("core", LOG_INFO, 1111, "destroying core"); core_destroy(); return 0; }