view include/core/filesystem.h @ 179:9c4645100fec

osx: clean up includes, we do not need cocoa what we *do* need is the very basics that animia already depends on anyway. these are basically guaranteed to be on any macos system, making it fairly portable now... I haven't tested this :) I don't have a macos machine right now...
author Paper <mrpapersonic@gmail.com>
date Mon, 04 Dec 2023 12:03:36 -0500
parents 0a458cb26ff4
children 2f5a9247e501
line wrap: on
line source

#ifndef __core__filesystem_h
#define __core__filesystem_h
#include <string>
#include <filesystem>

namespace Filesystem {

void CreateDirectories(const std::filesystem::path& path);
std::filesystem::path GetDotPath();        // %APPDATA%/minori, ~/Library/Application Support/minori, ~/.config/minori...
std::filesystem::path GetConfigPath();     // (dotpath)/config.json
std::filesystem::path GetAnimeDBPath();    // (dotpath)/anime/db.json
std::filesystem::path GetPlayersPath();    // (dotpath)/player.json
std::filesystem::path GetExtensionsPath(); // (dotpath)/extensions.json

} // namespace Filesystem

#endif // __core__filesystem_h