63 int range_first_frame = 0;
81 if (frame->
framenr < range_first_frame) {
83 range_first_frame = frame->
framenr;
95 range_first_frame = frame->
framenr;
141 bool has_primary =
false;
146 for (
int i = 0; i < totfile; i++) {
147 if (!(dir[i].
type & S_IFREG)) {
167 max_udim =
max_ii(max_udim,
id);
171 if (is_udim && has_primary) {
175 return max_udim - 1000;
202 int frame_curr = frame->
framenr;
203 range->
offset = frame_curr;
205 while (frame !=
NULL && (frame->
framenr == frame_curr)) {
const char * BKE_main_blendfile_path(const struct Main *bmain) ATTR_NONNULL()
File and directory operations.
void BLI_filelist_free(struct direntry *filelist, const unsigned int nrentries)
unsigned int BLI_filelist_dir_contents(const char *dir, struct direntry **r_filelist)
Some types for dealing with directories.
#define LISTBASE_FOREACH(type, var, list)
BLI_INLINE void BLI_listbase_clear(struct ListBase *lb)
struct LinkData * BLI_genericNodeN(void *data)
void void BLI_freelistN(struct ListBase *listbase) ATTR_NONNULL(1)
void void BLI_listbase_sort(struct ListBase *listbase, int(*cmp)(const void *, const void *)) ATTR_NONNULL(1
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
MINLINE int max_ii(int a, int b)
bool BLI_path_is_rel(const char *path) ATTR_NONNULL() ATTR_WARN_UNUSED_RESULT
int BLI_path_sequence_decode(const char *string, char *head, char *tail, unsigned short *r_num_len)
void BLI_join_dirfile(char *__restrict dst, const size_t maxlen, const char *__restrict dir, const char *__restrict file) ATTR_NONNULL()
void BLI_path_sequence_encode(char *string, const char *head, const char *tail, unsigned short numlen, int pic)
void BLI_path_rel(char *file, const char *relfile) ATTR_NONNULL()
void BLI_split_dirfile(const char *string, char *dir, char *file, const size_t dirlen, const size_t filelen)
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, const size_t maxncpy) ATTR_NONNULL()
#define STREQLEN(a, b, n)
#define POINTER_FROM_INT(i)
const char * dirname(char *path)
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
Read Guarded memory(de)allocation.
#define RNA_BEGIN(sptr, itemptr, propname)
static int image_get_udim(char *filepath, ListBase *udim_tiles)
static void image_detect_frame_range(ImageFrameRange *range, const bool detect_udim)
static void image_sequence_get_frame_ranges(wmOperator *op, ListBase *ranges)
ListBase ED_image_filesel_detect_sequences(Main *bmain, wmOperator *op, const bool detect_udim)
static int image_cmp_frame(const void *a, const void *b)
struct ImageFrame ImageFrame
void(* MEM_freeN)(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
void RNA_string_get(PointerRNA *ptr, const char *name, char *value)
bool RNA_struct_property_is_set(PointerRNA *ptr, const char *identifier)
bool RNA_boolean_get(PointerRNA *ptr, const char *name)
char * RNA_string_get_alloc(PointerRNA *ptr, const char *name, char *fixedbuf, int fixedlen)