Blender  V3.3
Classes | Typedefs | Functions
image_sequence.c File Reference
#include <string.h>
#include "MEM_guardedalloc.h"
#include "BLI_fileops.h"
#include "BLI_fileops_types.h"
#include "BLI_listbase.h"
#include "BLI_math_base.h"
#include "BLI_path_util.h"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "DNA_image_types.h"
#include "DNA_windowmanager_types.h"
#include "RNA_access.h"
#include "BKE_image.h"
#include "BKE_main.h"
#include "ED_image.h"

Go to the source code of this file.

Classes

struct  ImageFrame
 

Typedefs

typedef struct ImageFrame ImageFrame
 

Functions

static void image_sequence_get_frame_ranges (wmOperator *op, ListBase *ranges)
 
static int image_cmp_frame (const void *a, const void *b)
 
static void image_detect_frame_range (ImageFrameRange *range, const bool detect_udim)
 
ListBase ED_image_filesel_detect_sequences (Main *bmain, wmOperator *op, const bool detect_udim)
 

Typedef Documentation

◆ ImageFrame

typedef struct ImageFrame ImageFrame

Function Documentation

◆ ED_image_filesel_detect_sequences()

ListBase ED_image_filesel_detect_sequences ( struct Main bmain,
struct wmOperator op,
bool  detect_udim 
)

◆ image_cmp_frame()

static int image_cmp_frame ( const void a,
const void b 
)
static

Definition at line 87 of file image_sequence.c.

References Freestyle::a, usdtokens::b(), and ImageFrame::framenr.

Referenced by image_detect_frame_range().

◆ image_detect_frame_range()

static void image_detect_frame_range ( ImageFrameRange range,
const bool  detect_udim 
)
static

From a list of frames, compute the start (offset) and length of the sequence of contiguous frames. If detect_udim is set, it will return UDIM tiles as well.

Definition at line 105 of file image_sequence.c.

References BKE_image_get_tile_info(), BLI_listbase_sort(), ImageFrameRange::filepath, ListBase::first, ImageFrame::framenr, ImageFrameRange::frames, image_cmp_frame(), ImageFrameRange::length, ImageFrame::next, NULL, ImageFrameRange::offset, ImageFrameRange::udim_tiles, and ImageFrameRange::udims_detected.

Referenced by ED_image_filesel_detect_sequences().

◆ image_sequence_get_frame_ranges()

static void image_sequence_get_frame_ranges ( wmOperator op,
ListBase ranges 
)
static

Get a list of frames from the list of image files matching the first file name sequence pattern. The files and directory are read from standard file-select operator properties.

The output is a list of frame ranges, each containing a list of frames with matching names.

Definition at line 41 of file image_sequence.c.

References BLI_addtail(), BLI_join_dirfile(), BLI_path_sequence_decode(), BLI_strncpy(), FILE_MAX, FILE_MAXDIR, ImageFrameRange::filepath, ImageFrame::framenr, ImageFrameRange::frames, MEM_callocN, MEM_freeN, NULL, wmOperator::ptr, RNA_BEGIN, RNA_boolean_get(), RNA_END, RNA_string_get(), RNA_string_get_alloc(), and STREQLEN.

Referenced by ED_image_filesel_detect_sequences().