-
Notifications
You must be signed in to change notification settings - Fork 6
filesystem
anthony.samms edited this page May 28, 2026
·
1 revision
This library provides some useful functions related to filesystem access.
void set_working_directory_to_executable()Sets the working directory of the program to the directory of the program. This is required to load the skin and assets.
void extract_osz(const fs::path& osz_path);Extract an .osz file for osu. This will delete the .osz file after execution.
std::vector<fs::path> get_song_files(std::vector<fs::path> root_path);Returns a list of song paths based on a root path. This will not parse the songs.
rapidjson::Document read_json_file(fs::path file_path);Parses a json file into a rapidjson Document.
std::vector<SongListEntry> read_song_list(const fs::path& path);Reads a song_list.txt file. A song_list.txt file is structured as:
hash|title|subtitle
Where:
-
hashis the concatenated hash of each difficulty in the chart -
titleis the English (en) title of the chart -
subtitleis the English (en) subtitle of the chart
void write_song_list(const fs::path& path, const std::vector<SongListEntry>& entries);Write a song_list.txt file to a specified path.
Building
libs
- animation
- audio
- config
- filesystem
- global_data
- input
- logging
- ray
- scores
- screen
- script
- song_parser
- text
- texture
- video
- webcam
libs/parsers
objects
objects/game
- player
- background
- gauge
- judgment
- combo
- branch_indicator
- ending_animations
- gogo_time
- fireworks
- song_info
- transition
- result_transition
- judge_counter
- score_counter
- score_counter_animation
- balloon_counter
- drumroll_counter
- kusudama_counter
- drum_hit_effect
- lane_hit_effect
- gauge_hit_effect
- combo_announce
- note_arc
objects/global
objects/title
objects/entry
objects/settings
objects/result
objects/song_select
- player
- navigator
- box_base
- box_song
- box_folder
- neiro
- modifier
- ura_switch
- diff_sort
- search_box
- dan_transition
- genre_bg
- score_history
- song_select_script
scenes