Spaces:
Sleeping
Sleeping
File size: 11,405 Bytes
6ee917b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 | import Foundation
/**
List of all integrated domains
*/
enum DomainRegistry: String, CaseIterable {
case meteofrance_arome_france0025
case meteofrance_arome_france_hd
case meteofrance_arome_france0025_15min
case meteofrance_arome_france_hd_15min
case meteofrance_arpege_europe
case meteofrance_arpege_world025
case meteofrance_arpege_europe_probabilities
case meteofrance_arpege_world025_probabilities
case meteofrance_wave
case meteofrance_currents
case meteofrance_sea_surface_temperature
case cams_europe
case cams_global
case cams_global_greenhouse_gases
case cams_europe_reanalysis_interim
case cams_europe_reanalysis_validated
case cams_europe_reanalysis_validated_pre2020
case cams_europe_reanalysis_validated_pre2018
case copernicus_dem90
case copernicus_cerra
case copernicus_era5
case copernicus_era5_ensemble
case copernicus_era5_daily
case copernicus_era5_land
case copernicus_era5_land_daily
case copernicus_era5_ocean
case cmc_gem_gdps
case cmc_gem_geps
case cmc_gem_hrdps
case cmc_gem_rdps
case ncep_gfs013
case ncep_gfs025
case ncep_gfswave025
case ncep_gfswave016
case ncep_gefswave025
case ncep_gefs025
case ncep_gefs05
case ncep_hrrr_conus
case ncep_hrrr_conus_15min
case ncep_cfsv2
case ncep_gfs_graphcast025
case ncep_nbm_conus
case ncep_nbm_alaska
case glofas_consolidated_v4
case glofas_consolidated_v3
case glofas_forecast_v4
case glofas_forecast_v3
case glofas_intermediate_v4
case glofas_intermediate_v3
case glofas_seasonal_v3
case glofas_seasonal_v4
case dwd_icon
case dwd_icon_eu
case dwd_icon_d2
case dwd_icon_d2_15min
case dwd_icon_eps
case dwd_icon_eu_eps
case dwd_icon_d2_eps
case dwd_ewam
case dwd_gwam
case ecmwf_ifs
case ecmwf_ifs04
case ecmwf_ifs04_ensemble
case ecmwf_ifs025
case ecmwf_ifs025_ensemble
case ecmwf_aifs025
case ecmwf_aifs025_single
case ecmwf_wam025
case ecmwf_wam025_ensemble
case ecmwf_ifs_analysis
case ecmwf_ifs_analysis_long_window
case ecmwf_ifs_long_window
case jma_msm
case jma_gsm
case metno_nordic_pp
case nasa_imerg_daily
case cma_grapes_global
case bom_access_global
case bom_access_global_ensemble
case cmip_CMCC_CM2_VHR4
case cmip_EC_Earth3P_HR
case cmip_FGOALS_f3_H
case cmip_HiRAM_SIT_HR
case cmip_MPI_ESM1_2_XR
case cmip_MRI_AGCM3_2_S
case cmip_NICAM16_8S
case arpae_cosmo_2i
case arpae_cosmo_2i_ruc
case arpae_cosmo_5m
case knmi_harmonie_arome_europe
case knmi_harmonie_arome_netherlands
case dmi_harmonie_arome_europe
case ukmo_global_deterministic_10km
case ukmo_global_ensemble_20km
case ukmo_uk_deterministic_2km
case eumetsat_sarah3_30min
case jma_jaxa_himawari_10min
case eumetsat_lsa_saf_msg_15min
case eumetsat_lsa_saf_iodc_15min
case kma_gdps
case kma_ldps
var directory: String {
return "\(OpenMeteo.dataDirectory)\(rawValue)/"
}
func getDomain() -> GenericDomain {
switch self {
case .meteofrance_arome_france0025:
return MeteoFranceDomain.arome_france
case .meteofrance_arome_france_hd:
return MeteoFranceDomain.arome_france_hd
case .meteofrance_arpege_europe:
return MeteoFranceDomain.arpege_europe
case .meteofrance_arpege_world025:
return MeteoFranceDomain.arpege_world
case .meteofrance_arpege_europe_probabilities:
return MeteoFranceDomain.arpege_europe_probabilities
case .meteofrance_arpege_world025_probabilities:
return MeteoFranceDomain.arpege_world_probabilities
case .meteofrance_wave:
return MfWaveDomain.mfwave
case .meteofrance_currents:
return MfWaveDomain.mfcurrents
case .cams_europe:
return CamsDomain.cams_europe
case .cams_global:
return CamsDomain.cams_global
case .cams_global_greenhouse_gases:
return CamsDomain.cams_global_greenhouse_gases
case .copernicus_cerra:
return CdsDomain.cerra
case .copernicus_dem90:
return Dem90()
case .ecmwf_ifs:
return CdsDomain.ecmwf_ifs
case .ecmwf_ifs_analysis_long_window:
return CdsDomain.ecmwf_ifs_analysis_long_window
case .ecmwf_ifs_analysis:
return CdsDomain.ecmwf_ifs_analysis
case .ecmwf_ifs_long_window:
return CdsDomain.ecmwf_ifs_long_window
case .copernicus_era5:
return CdsDomain.era5
case .copernicus_era5_land:
return CdsDomain.era5_land
case .copernicus_era5_ocean:
return CdsDomain.era5_ocean
case .copernicus_era5_ensemble:
return CdsDomain.era5_ensemble
case .dwd_ewam:
return IconWaveDomain.ewam
case .cmc_gem_gdps:
return GemDomain.gem_global
case .cmc_gem_geps:
return GemDomain.gem_global_ensemble
case .cmc_gem_hrdps:
return GemDomain.gem_hrdps_continental
case .cmc_gem_rdps:
return GemDomain.gem_regional
case .ncep_gfs013:
return GfsDomain.gfs013
case .ncep_gfs025:
return GfsDomain.gfs025
case .ncep_gefs025:
return GfsDomain.gfs025_ens
case .ncep_gefs05:
return GfsDomain.gfs05_ens
case .glofas_consolidated_v4:
return GloFasDomain.consolidated
case .glofas_consolidated_v3:
return GloFasDomain.consolidatedv3
case .glofas_forecast_v4:
return GloFasDomain.forecast
case .glofas_forecast_v3:
return GloFasDomain.forecastv3
case .glofas_intermediate_v4:
return GloFasDomain.intermediate
case .glofas_intermediate_v3:
return GloFasDomain.intermediatev3
case .glofas_seasonal_v4:
return GloFasDomain.seasonal
case .glofas_seasonal_v3:
return GloFasDomain.seasonalv3
case .jma_gsm:
return JmaDomain.gsm
case .dwd_gwam:
return IconWaveDomain.gwam
case .ncep_hrrr_conus:
return GfsDomain.hrrr_conus
case .ncep_hrrr_conus_15min:
return GfsDomain.hrrr_conus_15min
case .dwd_icon:
return IconDomains.icon
case .dwd_icon_d2:
return IconDomains.iconD2
case .dwd_icon_d2_15min:
return IconDomains.iconD2_15min
case .dwd_icon_d2_eps:
return IconDomains.iconD2Eps
case .dwd_icon_eps:
return IconDomains.iconEps
case .dwd_icon_eu:
return IconDomains.iconEu
case .dwd_icon_eu_eps:
return IconDomains.iconEuEps
case .ecmwf_ifs04:
return EcmwfDomain.ifs04
case .ecmwf_ifs04_ensemble:
return EcmwfDomain.ifs04_ensemble
case .ecmwf_ifs025:
return EcmwfDomain.ifs025
case .ecmwf_ifs025_ensemble:
return EcmwfDomain.ifs025_ensemble
case .ecmwf_aifs025:
return EcmwfDomain.aifs025
case .ecmwf_aifs025_single:
return EcmwfDomain.aifs025_single
case .jma_msm:
return JmaDomain.msm
case .ncep_cfsv2:
return SeasonalForecastDomain.ncep
case .metno_nordic_pp:
return MetNoDomain.nordic_pp
case .nasa_imerg_daily:
return SatelliteDomain.imerg_daily
case .cmip_CMCC_CM2_VHR4:
return Cmip6Domain.CMCC_CM2_VHR4
case .cmip_EC_Earth3P_HR:
return Cmip6Domain.EC_Earth3P_HR
case .cmip_FGOALS_f3_H:
return Cmip6Domain.FGOALS_f3_H
case .cmip_HiRAM_SIT_HR:
return Cmip6Domain.HiRAM_SIT_HR
case .cmip_MPI_ESM1_2_XR:
return Cmip6Domain.MPI_ESM1_2_XR
case .cmip_MRI_AGCM3_2_S:
return Cmip6Domain.MRI_AGCM3_2_S
case .cmip_NICAM16_8S:
return Cmip6Domain.NICAM16_8S
case .copernicus_era5_daily:
return CdsDomain.era5_daily
case .copernicus_era5_land_daily:
return CdsDomain.era5_land_daily
case .cma_grapes_global:
return CmaDomain.grapes_global
case .bom_access_global:
return BomDomain.access_global
case .bom_access_global_ensemble:
return BomDomain.access_global_ensemble
case .meteofrance_arome_france0025_15min:
return MeteoFranceDomain.arome_france_15min
case .meteofrance_arome_france_hd_15min:
return MeteoFranceDomain.arome_france_hd_15min
case .arpae_cosmo_2i:
return ArpaeDomain.cosmo_2i
case .arpae_cosmo_2i_ruc:
return ArpaeDomain.cosmo_2i_ruc
case .arpae_cosmo_5m:
return ArpaeDomain.cosmo_5m
case .ncep_gfs_graphcast025:
return GfsGraphCastDomain.graphcast025
case .ecmwf_wam025:
return EcmwfDomain.wam025
case .ecmwf_wam025_ensemble:
return EcmwfDomain.wam025_ensemble
case .ncep_gfswave025:
return GfsDomain.gfswave025
case .ncep_gefswave025:
return GfsDomain.gfswave025_ens
case .knmi_harmonie_arome_europe:
return KnmiDomain.harmonie_arome_europe
case .knmi_harmonie_arome_netherlands:
return KnmiDomain.harmonie_arome_netherlands
case .dmi_harmonie_arome_europe:
return DmiDomain.harmonie_arome_europe
case .ukmo_global_deterministic_10km:
return UkmoDomain.global_deterministic_10km
case .ukmo_uk_deterministic_2km:
return UkmoDomain.uk_deterministic_2km
case .cams_europe_reanalysis_interim:
return CamsDomain.cams_europe_reanalysis_interim
case .cams_europe_reanalysis_validated:
return CamsDomain.cams_europe_reanalysis_validated
case .cams_europe_reanalysis_validated_pre2020:
return CamsDomain.cams_europe_reanalysis_validated_pre2020
case .cams_europe_reanalysis_validated_pre2018:
return CamsDomain.cams_europe_reanalysis_validated_pre2018
case .ncep_gfswave016:
return GfsDomain.gfswave016
case .ncep_nbm_conus:
return NbmDomain.nbm_conus
case .ncep_nbm_alaska:
return NbmDomain.nbm_alaska
case .ukmo_global_ensemble_20km:
return UkmoDomain.global_ensemble_20km
case .eumetsat_sarah3_30min:
return EumetsatSarahDomain.sarah3_30min
case .jma_jaxa_himawari_10min:
return JaxaHimawariDomain.himawari_10min
case .eumetsat_lsa_saf_msg_15min:
return EumetsatLsaSafDomain.msg
case .eumetsat_lsa_saf_iodc_15min:
return EumetsatLsaSafDomain.iodc
case .meteofrance_sea_surface_temperature:
return MfWaveDomain.mfsst
case .kma_gdps:
return KmaDomain.gdps
case .kma_ldps:
return KmaDomain.ldps
}
}
}
|