diff options
Diffstat (limited to 'source/blender/imbuf/IMB_imbuf.h')
-rw-r--r-- | source/blender/imbuf/IMB_imbuf.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/source/blender/imbuf/IMB_imbuf.h b/source/blender/imbuf/IMB_imbuf.h index d131e4dacdc..69a80d6e0d3 100644 --- a/source/blender/imbuf/IMB_imbuf.h +++ b/source/blender/imbuf/IMB_imbuf.h @@ -70,6 +70,7 @@ extern "C" { */ struct ImBuf; struct rcti; +struct rctf; /** * @@ -323,6 +324,11 @@ typedef enum IMB_Proxy_Size { IMB_PROXY_MAX_SLOT = 4, } IMB_Proxy_Size; +typedef enum eIMBInterpolationFilterMode { + IMB_FILTER_NEAREST, + IMB_FILTER_BILINEAR, +} eIMBInterpolationFilterMode; + /* Defaults to BL_proxy within the directory of the animation. */ void IMB_anim_set_index_dir(struct anim *anim, const char *dir); void IMB_anim_get_fname(struct anim *anim, char *file, int size); @@ -380,8 +386,6 @@ bool IMB_anim_can_produce_frames(const struct anim *anim); */ int ismovie(const char *filepath); -void IMB_anim_set_preseek(struct anim *anim, int preseek); -int IMB_anim_get_preseek(struct anim *anim); int IMB_anim_get_image_width(struct anim *anim); int IMB_anim_get_image_height(struct anim *anim); @@ -729,11 +733,17 @@ void IMB_processor_apply_threaded( void(init_handle)(void *handle, int start_line, int tot_line, void *customdata), void *(do_thread)(void *)); -typedef void (*ScanlineThreadFunc)(void *custom_data, int start_scanline, int num_scanlines); +typedef void (*ScanlineThreadFunc)(void *custom_data, int scanline); void IMB_processor_apply_threaded_scanlines(int total_scanlines, ScanlineThreadFunc do_thread, void *custom_data); +void IMB_transform(struct ImBuf *src, + struct ImBuf *dst, + float transform_matrix[3][3], + struct rctf *src_crop, + const eIMBInterpolationFilterMode filter); + /* ffmpeg */ void IMB_ffmpeg_init(void); const char *IMB_ffmpeg_last_error(void); |