Blender V4.5
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, IMB_FILE_TYPES_LAST, and imb_filetypes_exit().

Referenced by IMB_exit(), and imb_filetypes_exit().

◆ imb_filetypes_init()

void imb_filetypes_init ( )

◆ imb_init_dds()

void imb_init_dds ( )

Definition at line 33 of file format_dds.cc.

References BLI_getenv(), BLI_strcasestr(), and imb_init_dds().

Referenced by imb_init_dds().

◆ 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 imb_is_a_bmp(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_bmp().

◆ 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 imb_is_a_cineon(), logImageIsCineon(), and size().

Referenced by imb_is_a_cineon(), and imb_load_cineon().

◆ imb_is_a_dds()

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

Definition at line 46 of file format_dds.cc.

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

Referenced by imb_is_a_dds().

◆ 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 imb_is_a_dpx(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_dpx().

◆ 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 imb_is_a_hdr(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_hdr().

◆ imb_is_a_iris()

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

Definition at line 251 of file format_iris.cc.

References GS, imb_is_a_iris(), IRIS_MAGIC, and size().

Referenced by imb_is_a_iris(), and imb_loadiris().

◆ imb_is_a_jp2()

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

Definition at line 72 of file format_jp2.cc.

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

Referenced by imb_is_a_jp2().

◆ imb_is_a_jpeg()

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

Definition at line 49 of file format_jpeg.cc.

References imb_is_a_jpeg(), and size().

Referenced by imb_is_a_jpeg(), and 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 imb_is_a_png(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_png().

◆ 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 imb_is_a_psd(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_psd().

◆ 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 imb_is_a_tga(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_tga().

◆ 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 imb_is_a_tiff(), and blender::imbuf::imb_oiio_check().

Referenced by imb_is_a_tiff().

◆ imb_is_a_webp()

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

Definition at line 32 of file format_webp.cc.

References imb_is_a_webp(), and size().

Referenced by imb_is_a_webp(), and 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, imb_load_bmp(), and blender::imbuf::imb_oiio_read().

Referenced by imb_load_bmp().

◆ 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_cineon(), imb_load_dpx_cineon(), and size().

Referenced by imb_load_cineon().

◆ 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, imb_load_tga(), and blender::imbuf::imb_oiio_read().

Referenced by imb_load_tga().

◆ 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, imb_load_tiff(), blender::imbuf::imb_oiio_read(), and ImFileColorSpace::is_hdr_float.

Referenced by imb_load_tiff().

◆ 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_cineon(), and imb_save_dpx_cineon().

Referenced by imb_save_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 1177 of file format_jp2.cc.

References imb_save_jp2(), imb_save_jp2_stream(), and opj_stream_create_from_file().

Referenced by imb_save_jp2().

◆ 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(), imb_save_tiff(), ImBuf::planes, TIF_16BIT, TIF_COMPRESS_DEFLATE, TIF_COMPRESS_LZW, TIF_COMPRESS_NONE, and TIF_COMPRESS_PACKBITS.

Referenced by imb_save_tiff().

◆ 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 744 of file format_jpeg.cc.

References ImBuf::flags, imb_savejpeg(), and save_stdjpeg().

Referenced by imb_savejpeg().

◆ imb_savewebp()

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

◆ 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