#include "Config_Default.h"
Default_Config_File make_default_config_file(Config_Section section, const std::filesystem::path& directory) {
    switch (section) {
    case Config_Section::dsp:
        return make_default_dsp_config(directory);
    case Config_Section::drogon:
        return make_default_drogon_config(directory);
    case Config_Section::http_monitor:
        return make_default_http_monitor_config(directory);
    case Config_Section::mlat:
        return make_default_mlat_config(directory);
    case Config_Section::web_server:
        return make_default_web_server_config(directory);
    case Config_Section::map_resources:
        return make_default_map_resources_config(directory);
    case Config_Section::map_view:
        return make_default_map_view_config(directory);
    case Config_Section::map_models:
        return make_default_map_models_config(directory);
    case Config_Section::mode_acs:
        return make_default_mode_acs_config(directory);
    case Config_Section::log:
        return make_default_log_config(directory);
    case Config_Section::console:
        return make_default_console_config(directory);
    case Config_Section::external_database:
        return make_default_external_database_config(directory);
    case Config_Section::cesium_graphics:
        return make_default_cesium_graphics_config(directory);
    case Config_Section::count:
        std::terminate();
    }
    std::terminate();
}
