Blender V5.0
IMB_filetype.hh File Reference
#include "IMB_imbuf.hh"

Go to the source code of this file.

Classes

struct  ImFileType
struct  ImFileColorSpace

Functions

Format: PNG (#IMB_FTYPE_PNG)
bool imb_is_a_png (const unsigned char *mem, size_t size)
ImBufimb_load_png (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
bool imb_save_png (ImBuf *ibuf, const char *filepath, int flags)
Format: TARGA (#IMB_FTYPE_TGA)
bool imb_is_a_tga (const unsigned char *mem, size_t size)
ImBufimb_load_tga (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
bool imb_save_tga (ImBuf *ibuf, const char *filepath, int flags)
Format: IRIS (#IMB_FTYPE_IRIS)
bool imb_is_a_iris (const unsigned char *mem, size_t size)
ImBufimb_loadiris (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
bool imb_saveiris (ImBuf *ibuf, const char *filepath, int flags)
Format: JP2 (#IMB_FTYPE_JP2)
bool imb_is_a_jp2 (const unsigned char *buf, size_t size)
ImBufimb_load_jp2 (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
ImBufimb_load_jp2_filepath (const char *filepath, int flags, ImFileColorSpace &r_colorspace)
bool imb_save_jp2 (ImBuf *ibuf, const char *filepath, int flags)
Format: JPEG (#IMB_FTYPE_JPG)
bool imb_is_a_jpeg (const unsigned char *mem, size_t size)
bool imb_savejpeg (ImBuf *ibuf, const char *filepath, int flags)
ImBufimb_load_jpeg (const unsigned char *buffer, size_t size, int flags, ImFileColorSpace &r_colorspace)
ImBufimb_thumbnail_jpeg (const char *filepath, int flags, size_t max_thumb_size, ImFileColorSpace &r_colorspace, size_t *r_width, size_t *r_height)
Format: BMP (#IMB_FTYPE_BMP)
bool imb_is_a_bmp (const unsigned char *mem, size_t size)
ImBufimb_load_bmp (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
bool imb_save_bmp (ImBuf *ibuf, const char *filepath, int flags)
Format: CINEON (#IMB_FTYPE_CINEON)
bool imb_is_a_cineon (const unsigned char *mem, size_t size)
bool imb_save_cineon (ImBuf *buf, const char *filepath, int flags)
ImBufimb_load_cineon (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
Format: DPX (#IMB_FTYPE_DPX)
bool imb_is_a_dpx (const unsigned char *mem, size_t size)
bool imb_save_dpx (ImBuf *ibuf, const char *filepath, int flags)
ImBufimb_load_dpx (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
Format: HDR (#IMB_FTYPE_RADHDR)
bool imb_is_a_hdr (const unsigned char *mem, size_t size)
ImBufimb_load_hdr (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
bool imb_save_hdr (ImBuf *ibuf, const char *filepath, int flags)
Format: TIFF (#IMB_FTYPE_TIF)
bool imb_is_a_tiff (const unsigned char *mem, size_t size)
ImBufimb_load_tiff (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
bool imb_save_tiff (ImBuf *ibuf, const char *filepath, int flags)
Format: WEBP (#IMB_FTYPE_WEBP)
bool imb_is_a_webp (const unsigned char *mem, size_t size)
ImBufimb_loadwebp (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
ImBufimb_load_filepath_thumbnail_webp (const char *filepath, const int flags, const size_t max_thumb_size, ImFileColorSpace &r_colorspace, size_t *r_width, size_t *r_height)
bool imb_savewebp (ImBuf *ibuf, const char *filepath, int flags)
Format: DDS (#IMB_FTYPE_DDS)
void imb_init_dds ()
bool imb_is_a_dds (const unsigned char *mem, size_t size)
ImBufimb_load_dds (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
Format: PSD (#IMB_FTYPE_PSD)
bool imb_is_a_psd (const unsigned char *mem, size_t size)
ImBufimb_load_psd (const unsigned char *mem, size_t size, int flags, ImFileColorSpace &r_colorspace)
Format: SVG - Only for thumbnails.
ImBufimb_load_filepath_thumbnail_svg (const char *filepath, const int flags, const size_t max_thumb_size, ImFileColorSpace &r_colorspace, size_t *r_width, size_t *r_height)

Generic File Type

#define IM_FTYPE_FLOAT   1
const ImFileType IMB_FILE_TYPES []
const ImFileTypeIMB_FILE_TYPES_LAST
const ImFileTypeIMB_file_type_from_ftype (int ftype)
const ImFileTypeIMB_file_type_from_ibuf (const ImBuf *ibuf)
void imb_filetypes_init ()
void imb_filetypes_exit ()

Macro Definition Documentation

◆ IM_FTYPE_FLOAT

#define IM_FTYPE_FLOAT   1

Definition at line 20 of file IMB_filetype.hh.

Referenced by IMB_save_image().

Function Documentation

◆ IMB_file_type_from_ftype()

const ImFileType * IMB_file_type_from_ftype ( int ftype)

◆ IMB_file_type_from_ibuf()

const ImFileType * IMB_file_type_from_ibuf ( const ImBuf * ibuf)

◆ imb_filetypes_exit()

void imb_filetypes_exit ( )

Definition at line 250 of file filetype.cc.

References ImFileType::exit, IMB_FILE_TYPES, and IMB_FILE_TYPES_LAST.

Referenced by IMB_exit().

◆ imb_filetypes_init()

void imb_filetypes_init ( )

Definition at line 237 of file filetype.cc.

References IMB_FILE_TYPES, IMB_FILE_TYPES_LAST, ImFileType::init, and OIIO_init().

Referenced by IMB_init().

◆ imb_init_dds()

void imb_init_dds ( )

Definition at line 29 of file format_dds.cc.

References BLI_getenv(), and BLI_strcasestr().

◆ imb_is_a_bmp()

bool imb_is_a_bmp ( const unsigned char * mem,
size_t size )

Definition at line 17 of file format_bmp.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_cineon()

bool imb_is_a_cineon ( const unsigned char * mem,
size_t size )

Definition at line 179 of file cineon_dpx.cc.

References logImageIsCineon(), and size().

Referenced by imb_load_cineon().

◆ imb_is_a_dds()

bool imb_is_a_dds ( const unsigned char * mem,
size_t size )

Definition at line 42 of file format_dds.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_dpx()

bool imb_is_a_dpx ( const unsigned char * mem,
size_t size )

Definition at line 18 of file format_dpx.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_hdr()

bool imb_is_a_hdr ( const unsigned char * mem,
size_t size )

Definition at line 17 of file format_hdr.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_iris()

bool imb_is_a_iris ( const unsigned char * mem,
size_t size )

Definition at line 255 of file format_iris.cc.

References GS, IRIS_MAGIC, and size().

Referenced by imb_loadiris().

◆ imb_is_a_jp2()

bool imb_is_a_jp2 ( const unsigned char * buf,
size_t size )

Definition at line 76 of file format_jp2.cc.

References check_j2k(), check_jp2(), and size().

◆ imb_is_a_jpeg()

bool imb_is_a_jpeg ( const unsigned char * mem,
size_t size )

Definition at line 54 of file format_jpeg.cc.

References magic(), and size().

Referenced by imb_load_jpeg().

◆ imb_is_a_png()

bool imb_is_a_png ( const unsigned char * mem,
size_t size )

Definition at line 18 of file format_png.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_psd()

bool imb_is_a_psd ( const unsigned char * mem,
size_t size )

Definition at line 18 of file format_psd.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_tga()

bool imb_is_a_tga ( const unsigned char * mem,
size_t size )

Definition at line 17 of file format_targa.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_tiff()

bool imb_is_a_tiff ( const unsigned char * mem,
size_t size )

Definition at line 18 of file format_tiff.cc.

References blender::imbuf::imb_oiio_check(), and size().

◆ imb_is_a_webp()

bool imb_is_a_webp ( const unsigned char * mem,
size_t size )

Definition at line 37 of file format_webp.cc.

References size().

Referenced by imb_loadwebp().

◆ imb_load_bmp()

ImBuf * imb_load_bmp ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

Definition at line 22 of file format_bmp.cc.

References IMB_FTYPE_BMP, blender::imbuf::imb_oiio_read(), and size().

◆ imb_load_cineon()

ImBuf * imb_load_cineon ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

Definition at line 184 of file cineon_dpx.cc.

References imb_is_a_cineon(), imb_load_dpx_cineon(), and size().

◆ imb_load_dds()

ImBuf * imb_load_dds ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_dpx()

ImBuf * imb_load_dpx ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_filepath_thumbnail_svg()

ImBuf * imb_load_filepath_thumbnail_svg ( const char * filepath,
const int flags,
const size_t max_thumb_size,
ImFileColorSpace & r_colorspace,
size_t * r_width,
size_t * r_height )

◆ imb_load_filepath_thumbnail_webp()

ImBuf * imb_load_filepath_thumbnail_webp ( const char * filepath,
const int flags,
const size_t max_thumb_size,
ImFileColorSpace & r_colorspace,
size_t * r_width,
size_t * r_height )

◆ imb_load_hdr()

◆ imb_load_jp2()

ImBuf * imb_load_jp2 ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_jp2_filepath()

ImBuf * imb_load_jp2_filepath ( const char * filepath,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_jpeg()

ImBuf * imb_load_jpeg ( const unsigned char * buffer,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_png()

ImBuf * imb_load_png ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_psd()

ImBuf * imb_load_psd ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_load_tga()

ImBuf * imb_load_tga ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

Definition at line 22 of file format_targa.cc.

References IMB_FTYPE_TGA, blender::imbuf::imb_oiio_read(), and size().

◆ imb_load_tiff()

ImBuf * imb_load_tiff ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

Loads a TIFF file.

Parameters
memMemory containing the TIFF file.
sizeSize of the mem buffer.
flagsIf flags has IB_test set then the file is not actually loaded, but all other operations take place.
Returns
A newly allocated ImBuf structure if successful, otherwise NULL.

Definition at line 23 of file format_tiff.cc.

References ImBuf::flags, IB_alphamode_detect, IB_alphamode_premul, IMB_FTYPE_TIF, blender::imbuf::imb_oiio_read(), ImFileColorSpace::is_hdr_float, and size().

◆ imb_loadiris()

◆ imb_loadwebp()

ImBuf * imb_loadwebp ( const unsigned char * mem,
size_t size,
int flags,
ImFileColorSpace & r_colorspace )

◆ imb_save_bmp()

bool imb_save_bmp ( ImBuf * ibuf,
const char * filepath,
int flags )

◆ imb_save_cineon()

bool imb_save_cineon ( ImBuf * buf,
const char * filepath,
int flags )

Definition at line 174 of file cineon_dpx.cc.

References imb_save_dpx_cineon().

◆ imb_save_dpx()

◆ imb_save_hdr()

bool imb_save_hdr ( ImBuf * ibuf,
const char * filepath,
int flags )

◆ imb_save_jp2()

bool imb_save_jp2 ( ImBuf * ibuf,
const char * filepath,
int flags )

Definition at line 1178 of file format_jp2.cc.

References imb_save_jp2_stream(), and opj_stream_create_from_file().

◆ imb_save_png()

◆ imb_save_tga()

◆ imb_save_tiff()

bool imb_save_tiff ( ImBuf * ibuf,
const char * filepath,
int flags )

Saves a TIFF file.

ImBuf structures with 1, 3 or 4 bytes per pixel (GRAY, RGB, RGBA respectively) are accepted, and interpreted correctly. Note that the TIFF convention is to use pre-multiplied alpha, which can be achieved within Blender by setting premul alpha handling. Other alpha conventions are not strictly correct, but are permitted anyhow.

Parameters
ibufImage buffer.
filepathName of the TIFF file to create.
flagsCurrently largely ignored.
Returns
1 if the function is successful, 0 on failure.

Definition at line 45 of file format_tiff.cc.

References ImBufFloatBuffer::data, ImbFormatOptions::flag, ImBuf::float_buffer, ImBuf::foptions, blender::imbuf::imb_create_write_context(), blender::imbuf::imb_create_write_spec(), blender::imbuf::imb_oiio_write(), ImBuf::planes, TIF_16BIT, TIF_COMPRESS_DEFLATE, TIF_COMPRESS_LZW, TIF_COMPRESS_NONE, and TIF_COMPRESS_PACKBITS.

◆ imb_saveiris()

bool imb_saveiris ( ImBuf * ibuf,
const char * filepath,
int flags )

◆ imb_savejpeg()

bool imb_savejpeg ( ImBuf * ibuf,
const char * filepath,
int flags )

Definition at line 762 of file format_jpeg.cc.

References ImBuf::flags, and save_stdjpeg().

◆ imb_savewebp()

◆ imb_thumbnail_jpeg()

ImBuf * imb_thumbnail_jpeg ( const char * filepath,
int flags,
size_t max_thumb_size,
ImFileColorSpace & r_colorspace,
size_t * r_width,
size_t * r_height )

Variable Documentation

◆ IMB_FILE_TYPES

◆ IMB_FILE_TYPES_LAST