17auto atomic_rename_file(
const fs::path& src,
const fs::path& dst, fs::error_code& ec)
noexcept -> bool;
18auto make_temp_path(
const fs::path& dir, fs::path& out, fs::error_code& ec)
noexcept -> bool;
23auto atomic_copy_file(
const fs::path& src,
const fs::path& dst, fs::error_code& ec)
noexcept -> bool;
25 const std::function<
void(
const fs::path&)>& callback,
26 fs::error_code& ec)
noexcept;
31 const fs::path& key = asset.id();
35 if(absolute_path.extension() !=
".meta")
37 absolute_path +=
".meta";
52 [&](
const fs::path& temp)
60 catch(
const std::exception& e)
62 APPLOG_ERROR(
"Failed to save object to file: {0}", e.what());
77 [&](
const fs::path& temp)
85 catch(
const std::exception& e)
87 APPLOG_ERROR(
"Failed to save object to file: {0}", e.what());
#define APPLOG_ERROR(...)
auto get_data_directory(const std::string &prefix={}) -> std::string
auto get_meta_directory(const std::string &prefix={}) -> std::string
path resolve_protocol(const path &_path)
Given the specified path/filename, resolve the final full filename. This will be based on either the ...
path replace(const path &_path, const path &_sequence, const path &_new_sequence)
Replacing any occurences of the specified path sequence with another.
path convert_to_protocol(const path &_path)
Oposite of the resolve_protocol this function tries to convert to protocol path from an absolute one.
auto make_temp_path(const fs::path &dir, fs::path &out, fs::error_code &ec) noexcept -> bool
auto atomic_rename_file(const fs::path &src, const fs::path &dst, fs::error_code &ec) noexcept -> bool
auto atomic_save_to_file(const fs::path &key, const asset_handle< T > &obj) -> bool
auto atomic_copy_file(const fs::path &src, const fs::path &dst, fs::error_code &ec) noexcept -> bool
auto resolve_meta_file(const asset_handle< T > &asset) -> fs::path
void atomic_write_file(const fs::path &dst, const std::function< void(const fs::path &)> &callback, fs::error_code &ec) noexcept
void save_to_file(const std::string &absolute_path, const animation_clip &obj)
Represents a handle to an asset, providing access and management functions.