// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project // SPDX-License-Identifier: GPL-3.0-or-later // SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later #include #include #include "common/swap.h" #include "core/file_sys/system_archive/time_zone_binary.h" #include "core/file_sys/vfs/vfs_static.h" #include "core/file_sys/vfs/vfs_types.h" #include "core/file_sys/vfs/vfs_vector.h" #include "nx_tzdb.h" namespace FileSys::SystemArchive { VirtualDir TimeZoneBinary() { std::vector america_sub_dirs; america_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_america_argentina(), std::vector{}, "Argentina")); america_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_america_indiana(), std::vector{}, "Indiana")); america_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_america_kentucky(), std::vector{}, "Kentucky")); america_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_america_north_dakota(), std::vector{}, "North_Dakota")); std::vector zoneinfo_sub_dirs; zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_africa(), std::vector{}, "Africa")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_america(), std::move(america_sub_dirs), "America")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_antarctica(), std::vector{}, "Antarctica")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_arctic(), std::vector{}, "Arctic")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_asia(), std::vector{}, "Asia")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_atlantic(), std::vector{}, "Atlantic")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_australia(), std::vector{}, "Australia")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_brazil(), std::vector{}, "Brazil")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_canada(), std::vector{}, "Canada")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_chile(), std::vector{}, "Chile")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_etc(), std::vector{}, "Etc")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_europe(), std::vector{}, "Europe")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_indian(), std::vector{}, "Indian")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_mexico(), std::vector{}, "Mexico")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_pacific(), std::vector{}, "Pacific")); zoneinfo_sub_dirs.push_back(std::make_shared(NxTzdb::CollectFiles_us(), std::vector{}, "US")); std::vector zoneinfo_dir{std::make_shared(NxTzdb::CollectFiles_zoneinfo(), std::move(zoneinfo_sub_dirs), "zoneinfo")}; // last files (root) return std::make_shared(NxTzdb::CollectFiles_base(), std::move(zoneinfo_dir), "data"); } } // namespace FileSys::SystemArchive