Blender V4.3
IMB_filetype.hh File Reference
#include "IMB_imbuf.hh"

Go to the source code of this file.

Classes

struct  ImFileType
 

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, char colorspace[IM_MAX_SPACE])
 
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, char colorspace[IM_MAX_SPACE])
 
bool imb_save_tga (ImBuf *ibuf, const char *filepath, int flags)
 
Format: IRIS (#IMB_FTYPE_IMAGIC)
bool imb_is_a_iris (const unsigned char *mem, size_t size)
 
ImBufimb_loadiris (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
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, char colorspace[IM_MAX_SPACE])
 
ImBufimb_load_jp2_filepath (const char *filepath, int flags, char colorspace[IM_MAX_SPACE])
 
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, char colorspace[IM_MAX_SPACE])
 
ImBufimb_thumbnail_jpeg (const char *filepath, int flags, size_t max_thumb_size, char colorspace[IM_MAX_SPACE], size_t *r_width, size_t *r_height)
 
Format: BMP (#IMB_FTYPE_BMP)
bool imb_is_a_bmp (const unsigned char *buf, size_t size)
 
ImBufimb_load_bmp (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
bool imb_save_bmp (ImBuf *ibuf, const char *filepath, int flags)
 
Format: CINEON (#IMB_FTYPE_CINEON)
bool imb_is_a_cineon (const unsigned char *buf, 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, char colorspace[IM_MAX_SPACE])
 
Format: DPX (#IMB_FTYPE_DPX)
bool imb_is_a_dpx (const unsigned char *buf, 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, char colorspace[IM_MAX_SPACE])
 
Format: HDR (#IMB_FTYPE_RADHDR)
bool imb_is_a_hdr (const unsigned char *buf, size_t size)
 
ImBufimb_load_hdr (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
bool imb_save_hdr (ImBuf *ibuf, const char *filepath, int flags)
 
Format: TIFF (#IMB_FTYPE_TIF)
bool imb_is_a_tiff (const unsigned char *buf, size_t size)
 
ImBufimb_load_tiff (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
bool imb_save_tiff (ImBuf *ibuf, const char *filepath, int flags)
 
Format: WEBP (#IMB_FTYPE_WEBP)
bool imb_is_a_webp (const unsigned char *buf, size_t size)
 
ImBufimb_loadwebp (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
ImBufimb_load_filepath_thumbnail_webp (const char *filepath, const int flags, const size_t max_thumb_size, char 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 *buf, size_t size)
 
ImBufimb_load_dds (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
Format: PSD (#IMB_FTYPE_PSD)
bool imb_is_a_psd (const unsigned char *buf, size_t size)
 
ImBufimb_load_psd (const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE])
 
Format: SVG - Only for thumbnails.
ImBufimb_load_filepath_thumbnail_svg (const char *filepath, const int flags, const size_t max_thumb_size, char 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 19 of file IMB_filetype.hh.

Referenced by IMB_saveiff().

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, and OIIO_init().

Referenced by IMB_init().

◆ imb_init_dds()

void imb_init_dds ( )

Definition at line 34 of file format_dds.cc.

References BLI_getenv(), and BLI_strcasestr().

◆ imb_is_a_bmp()

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

Definition at line 17 of file format_bmp.cc.

References blender::imbuf::imb_oiio_check().

◆ imb_is_a_cineon()

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

Definition at line 172 of file cineon_dpx.cc.

References logImageIsCineon().

Referenced by imb_load_cineon().

◆ imb_is_a_dds()

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

Definition at line 47 of file format_dds.cc.

References blender::imbuf::imb_oiio_check().

◆ imb_is_a_dpx()

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

Definition at line 18 of file format_dpx.cc.

References blender::imbuf::imb_oiio_check().

◆ imb_is_a_hdr()

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

Definition at line 17 of file format_hdr.cc.

References blender::imbuf::imb_oiio_check().

◆ imb_is_a_iris()

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

Definition at line 207 of file iris.cc.

References GS, GSS, and IMAGIC.

Referenced by imb_loadiris().

◆ imb_is_a_jp2()

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

Definition at line 71 of file jp2.cc.

References check_j2k(), and check_jp2().

◆ imb_is_a_jpeg()

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

Definition at line 49 of file jpeg.cc.

References magic().

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().

◆ imb_is_a_psd()

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

Definition at line 18 of file format_psd.cc.

References blender::imbuf::imb_oiio_check().

◆ 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().

◆ imb_is_a_tiff()

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

Definition at line 18 of file format_tiff.cc.

References blender::imbuf::imb_oiio_check().

◆ imb_is_a_webp()

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

Definition at line 33 of file webp.cc.

Referenced by imb_loadwebp().

◆ imb_load_bmp()

ImBuf * imb_load_bmp ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

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,
char colorspace[IM_MAX_SPACE] )

Definition at line 177 of file cineon_dpx.cc.

References imb_is_a_cineon(), and imb_load_dpx_cineon().

◆ imb_load_dds()

ImBuf * imb_load_dds ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_dpx()

ImBuf * imb_load_dpx ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_filepath_thumbnail_svg()

ImBuf * imb_load_filepath_thumbnail_svg ( const char * filepath,
const int flags,
const size_t max_thumb_size,
char 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,
char colorspace[],
size_t * r_width,
size_t * r_height )

◆ imb_load_hdr()

ImBuf * imb_load_hdr ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_jp2()

ImBuf * imb_load_jp2 ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_jp2_filepath()

ImBuf * imb_load_jp2_filepath ( const char * filepath,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_jpeg()

ImBuf * imb_load_jpeg ( const unsigned char * buffer,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_png()

ImBuf * imb_load_png ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_psd()

ImBuf * imb_load_psd ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ imb_load_tga()

ImBuf * imb_load_tga ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

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,
char colorspace[IM_MAX_SPACE] )

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 COLOR_ROLE_DEFAULT_BYTE, ImBuf::flags, IB_alphamode_detect, IB_alphamode_premul, IMB_FTYPE_TIF, blender::imbuf::imb_oiio_read(), size(), and blender::imbuf::ReadContext::use_colorspace_role.

◆ imb_loadiris()

◆ imb_loadwebp()

ImBuf * imb_loadwebp ( const unsigned char * mem,
size_t size,
int flags,
char colorspace[IM_MAX_SPACE] )

◆ 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 167 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 1183 of file 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 746 of file jpeg.cc.

References ImBuf::flags, and save_stdjpeg().

◆ 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,
char colorspace[IM_MAX_SPACE],
size_t * r_width,
size_t * r_height )

Variable Documentation

◆ IMB_FILE_TYPES

◆ IMB_FILE_TYPES_LAST

const ImFileType* IMB_FILE_TYPES_LAST
extern