Blender V4.3
Image Buffer (ImBuf)

Topics

 Cineon
 OpenEXR

Files

file  BKE_image_wrappers.hh
file  IMB_colormanagement.hh
file  IMB_imbuf.hh
file  IMB_imbuf_enums.h
file  IMB_imbuf_types.hh
 Contains defines and structs used throughout the imbuf module.
file  IMB_interp.hh
file  IMB_moviecache.hh
file  IMB_openexr.hh
file  IMB_thumbs.hh
file  allocimbuf.cc
file  anim_movie.cc
file  colormanagement.cc
file  colormanagement_inline.h
file  divers.cc
file  filetype.cc
file  filter.cc
file  format_bmp.cc
file  format_dds.cc
file  format_dpx.cc
file  format_hdr.cc
file  format_png.cc
file  format_psd.cc
file  format_svg.cc
file  format_targa.cc
file  format_tiff.cc
file  imageprocess.cc
file  IMB_allocimbuf.hh
file  IMB_anim.hh
file  IMB_colormanagement_intern.hh
file  IMB_filetype.hh
file  IMB_filter.hh
 Function declarations for filter.cc.
file  IMB_indexer.hh
file  imbuf.hh
file  indexer.cc
file  interp.cc
file  iris.cc
file  jp2.cc
file  jpeg.cc
file  module.cc
file  readimage.cc
file  rectop.cc
file  rotate.cc
file  scaling.cc
file  stereoimbuf.cc
file  thumbs.cc
file  thumbs_blend.cc
file  thumbs_font.cc
file  transform.cc
file  util.cc
file  util_gpu.cc
file  webp.cc
file  writeimage.cc

Macros

#define OPENEXR_HALF   (1 << 8)

Detailed Description

ImBuf module external interface

This module offers import/export of several graphical file formats.

About the IMB module

External interface of the IMage Buffer module. This module offers import/export of several graphical file formats. It offers the ImBuf type as a common structure to refer to different graphical file formats, and to enable a uniform way of handling them.

Known issues with IMB

  • imbuf is written in C.
  • Endianness issues are dealt with internally.
  • File I/O must be done externally. The module uses FILE*'s to direct input/output.

Dependencies

IMB needs:

  • Struct DNA (File Format) module The ListBase types are used for handling the memory management.
  • blenlib module blenlib handles guarded memory management in blender-style. BLI_winstuff.h makes a few windows specific behaviors posix-compliant.

Macro Definition Documentation

◆ OPENEXR_HALF

#define OPENEXR_HALF   (1 << 8)

This is the abstraction of an image. ImBuf is the basic type used for all imbuf operations.

Also; add new variables to the end to save pain! #ImBuf::foptions.flag, type specific options. Some formats include compression rations on some bits.

Definition at line 48 of file IMB_imbuf_types.hh.

Referenced by BKE_image_format_from_imbuf(), BKE_image_format_to_imbuf(), and imb_save_openexr().