17 SNPRINTF(file_name_c,
"%011.5f",
double(frame));
25 file_name.
copy(modified_file_name);
28 const SubFrame frame = std::stof(modified_file_name);
47 for (
const int i :
IndexRange(dir_entries_num)) {
48 const direntry &dir_entry = dir_entries[i];
50 if (!dir_entry_path.
endswith(
".json")) {
57 meta_files.append({*frame, dir_entry_path});
60 std::sort(meta_files.begin(), meta_files.end(), [](
const MetaFile &a,
const MetaFile &
b) {
61 return a.frame < b.frame;
unsigned int BLI_filelist_dir_contents(const char *dirname, struct direntry **r_filelist)
bool BLI_is_dir(const char *path) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
void BLI_filelist_free(struct direntry *filelist, unsigned int nrentries)
File and directory operations.
#define BLI_SCOPED_DEFER(function_to_defer)
#define BLI_path_join(...)
#define SNPRINTF(dst, format,...)
void BLI_string_replace_char(char *str, char src, char dst) ATTR_NONNULL(1)
void copy(char *dst, int64_t dst_size) const
constexpr bool endswith(StringRef suffix) const
constexpr const char * c_str() const
local_group_size(16, 16) .push_constant(Type b
std::optional< SubFrame > file_name_to_frame(const StringRef file_name)
Vector< MetaFile > find_sorted_meta_files(const StringRefNull meta_dir)
std::string frame_to_file_name(const SubFrame &frame)
static BakePath from_single_root(StringRefNull root_dir)
std::optional< std::string > bake_dir