Blender
V3.3
|
Go to the source code of this file.
Functions | |
void * | IMB_exr_get_handle (void) |
void * | IMB_exr_get_handle_name (const char *) |
void | IMB_exr_add_channel (void *, const char *, const char *, const char *, int, int, float *, bool) |
bool | IMB_exr_begin_read (void *, const char *, int *, int *, const bool) |
bool | IMB_exr_begin_write (void *, const char *, int, int, int, const struct StampData *) |
void | IMB_exrtile_begin_write (void *, const char *, int, int, int, int, int) |
void | IMB_exr_set_channel (void *, const char *, const char *, int, int, float *) |
float * | IMB_exr_channel_rect (void *, const char *, const char *, const char *) |
void | IMB_exr_read_channels (void *) |
void | IMB_exr_write_channels (void *) |
void | IMB_exrtile_write_channels (void *, int, int, int, const char *, bool) |
void | IMB_exr_clear_channels (void *) |
void | IMB_exr_multilayer_convert (void *, void *, void *(*)(void *base, const char *str), void *(*)(void *base, const char *str), void(*)(void *base, void *lay, const char *str, float *rect, int totchan, const char *chan_id, const char *view)) |
void | IMB_exr_close (void *) |
void | IMB_exr_add_view (void *, const char *) |
bool | IMB_exr_has_multilayer (void *) |
void IMB_exr_add_channel | ( | void * | handle, |
const char * | layname, | ||
const char * | passname, | ||
const char * | view, | ||
int | xstride, | ||
int | ystride, | ||
float * | rect, | ||
bool | use_half_float | ||
) |
Adds flattened ExrChannel's xstride
, ystride
and rect
can be done in set_channel too, for tile writing.
passname | Does not include view. |
Definition at line 20 of file openexr_stub.cpp.
References BLI_addtail(), BLI_strncpy(), data, exr_printf(), imb_exr_get_multiView_id(), imb_exr_insert_view_name(), ExrChannel::m, max, ExrChannel::name, ExrChannel::rect, ExrChannel::use_half_float, ExrChannel::view_id, ExrChannel::xstride, and ExrChannel::ystride.
Referenced by blender::compositor::add_exr_channels(), BKE_image_render_write_exr(), blender::compositor::OutputStereoOperation::deinit_execution(), and render_layer_add_pass().
Definition at line 110 of file openexr_stub.cpp.
References data, and ExrLayer::name.
Referenced by BKE_image_render_write_exr(), blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::get_handle(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle(), and blender::compositor::OutputStereoOperation::get_handle().
bool IMB_exr_begin_read | ( | void * | handle, |
const char * | filepath, | ||
int * | width, | ||
int * | height, | ||
bool | parse_channels | ||
) |
Read from file.
Definition at line 31 of file openexr_stub.cpp.
References BLI_exists(), BLI_file_size(), channels(), data, height, IMB_exr_add_channel(), imb_exr_get_views(), imb_exr_multilayer_parse_channels_from_file(), ExrChannel::m, parse_channels(), and width.
Referenced by render_result_exr_file_cache_read(), and render_result_exr_file_read_path().
bool IMB_exr_begin_write | ( | void * | handle, |
const char * | filepath, | ||
int | width, | ||
int | height, | ||
int | compress, | ||
const struct StampData * | stamp | ||
) |
Used for output files (from RenderResult) (single and multi-layer, single and multi-view).
Definition at line 39 of file openexr_stub.cpp.
Referenced by BKE_image_render_write_exr(), blender::compositor::OutputOpenExrMultiLayerOperation::deinit_execution(), blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::get_handle(), and blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle().
float* IMB_exr_channel_rect | ( | void * | handle, |
const char * | layname, | ||
const char * | passname, | ||
const char * | view | ||
) |
Definition at line 66 of file openexr_stub.cpp.
References BLI_findstring(), BLI_snprintf(), BLI_strncpy(), data, EXR_LAY_MAXNAME, EXR_PASS_MAXNAME, EXR_TOT_MAXNAME, imb_exr_get_multiView_id(), imb_exr_insert_view_name(), max, ExrLayer::name, and ExrChannel::rect.
Referenced by blender::compositor::OutputStereoOperation::deinit_execution(), and blender::compositor::free_exr_channels().
Definition at line 88 of file openexr_stub.cpp.
References BLI_freelistN(), data, ExrChannel::m, and ExrChannel::next.
Referenced by blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::get_handle(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle(), and blender::compositor::OutputStereoOperation::get_handle().
Definition at line 106 of file openexr_stub.cpp.
References BLI_freelistN(), BLI_remlink(), data, exrhandles, ListBase::first, ExrChannel::m, MEM_freeN, ExrChannel::next, ExrPass::next, ExrLayer::next, ExrLayer::passes, and ExrPass::rect.
Referenced by BKE_image_render_write_exr(), BKE_movieclip_convert_multilayer_ibuf(), blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::deinit_execution(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::deinit_execution(), blender::compositor::OutputStereoOperation::deinit_execution(), blender::compositor::OutputOpenExrMultiLayerOperation::deinit_execution(), blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::get_handle(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle(), render_result_exr_file_cache_read(), render_result_exr_file_read_path(), and studiolight_load_equirect_image().
Definition at line 12 of file openexr_stub.cpp.
References BLI_addtail(), data, and exrhandles.
Referenced by BKE_image_render_write_exr(), blender::compositor::OutputOpenExrMultiLayerOperation::deinit_execution(), render_result_exr_file_cache_read(), and render_result_exr_file_read_path().
void* IMB_exr_get_handle_name | ( | const char * | name | ) |
Definition at line 16 of file openexr_stub.cpp.
References BLI_rfindstring(), BLI_strncpy(), data, exrhandles, IMB_exr_get_handle(), and ExrLayer::name.
Referenced by blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::get_handle(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle(), and blender::compositor::OutputStereoOperation::get_handle().
Definition at line 113 of file openexr_stub.cpp.
References data, and imb_exr_is_multi().
Referenced by load_image_single().
void IMB_exr_multilayer_convert | ( | void * | , |
void * | , | ||
void * | *)(void *base, const char *str, | ||
void * | *)(void *base, const char *str, | ||
void(*)(void *base, void *lay, const char *str, float *rect, int totchan, const char *chan_id, const char *view) | |||
) |
Definition at line 92 of file openexr_stub.cpp.
Definition at line 74 of file openexr_stub.cpp.
References data, exr_printf(), FLOAT, float(), ExrChannel::m, ExrChannel::next, ExrChannel::rect, STRPREFIX, ExrChannel::xstride, and ExrChannel::ystride.
Referenced by render_result_exr_file_cache_read(), and render_result_exr_file_read_path().
void IMB_exr_set_channel | ( | void * | handle, |
const char * | layname, | ||
const char * | passname, | ||
int | xstride, | ||
int | ystride, | ||
float * | rect | ||
) |
Still clumsy name handling, layers/channels can be ordered as list in list later.
passname | Here is the raw channel name without the layer. |
Definition at line 58 of file openexr_stub.cpp.
References BLI_findstring(), BLI_snprintf(), BLI_strncpy(), data, EXR_LAY_MAXNAME, EXR_PASS_MAXNAME, EXR_TOT_MAXNAME, ExrLayer::name, ExrChannel::rect, ExrChannel::xstride, and ExrChannel::ystride.
Referenced by render_result_exr_file_read_path().
Definition at line 77 of file openexr_stub.cpp.
References data, FLOAT, float(), float_to_half_safe(), HALF, MEM_freeN, MEM_mallocN, ExrChannel::name, ExrChannel::next, num_pixels, ExrChannel::rect, ExrChannel::use_half_float, ExrChannel::xstride, and ExrChannel::ystride.
Referenced by BKE_image_render_write_exr(), blender::compositor::OutputOpenExrSingleLayerMultiViewOperation::deinit_execution(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::deinit_execution(), and blender::compositor::OutputOpenExrMultiLayerOperation::deinit_execution().
void IMB_exrtile_begin_write | ( | void * | handle, |
const char * | filepath, | ||
int | mipmap, | ||
int | width, | ||
int | height, | ||
int | tilex, | ||
int | tiley | ||
) |
Only used for writing temp. render results (not image files) (FSA and Save Buffers).
Definition at line 48 of file openexr_stub.cpp.
References BLI_assert, data, exr_printf(), FLOAT, height, ExrChannel::m, ExrChannel::next, ExrChannel::use_half_float, ExrChannel::view_id, and width.
void IMB_exrtile_write_channels | ( | void * | handle, |
int | partx, | ||
int | party, | ||
int | level, | ||
const char * | viewname, | ||
bool | empty | ||
) |
Temporary function, used for FSA and Save Buffers. called once per tile * view
.
Definition at line 80 of file openexr_stub.cpp.
References data, exr_printf(), FLOAT, imb_exr_get_multiView_id(), ExrChannel::m, ExrChannel::next, usdtokens::out(), ExrChannel::rect, STREQ, view, ExrChannel::xstride, and ExrChannel::ystride.