26 const char *view_name,
27 const bool save_as_render)
64 printf(
"Error Writing Singlelayer Multiview Openexr\n");
80 if (width != 0 &&
height != 0) {
128 const char *view_name)
138 if (width != 0 &&
height != 0) {
161 for (
unsigned int i = 0; i <
layers_.size(); i++) {
177 printf(
"Error Writing Multilayer Multiview Openexr\n");
195 if (width != 0 &&
height != 0) {
210 for (
unsigned int i = 0; i <
layers_.size(); i++) {
220 for (
unsigned int i = 0; i <
layers_.size(); i++) {
222 layers_[i].output_buffer =
nullptr;
223 layers_[i].image_input =
nullptr;
231 for (
unsigned int i = 0; i <
layers_.size(); i++) {
249 const char *view_name,
250 const bool save_as_render)
276 for (i = 0; i < 2; i++) {
290 if (width != 0 &&
height != 0) {
311 ImBuf *ibuf[3] = {
nullptr};
317 for (i = 0; i < 2; i++) {
345 for (i = 0; i < 3; i++) {
void BKE_stamp_data_free(struct StampData *stamp_data)
int BKE_imbuf_write(struct ImBuf *ibuf, const char *name, const struct ImageFormatData *imf)
const char * BKE_main_blendfile_path_from_global(void)
bool BKE_scene_multiview_is_render_view_active(const struct RenderData *rd, const struct SceneRenderView *srv)
bool BKE_scene_multiview_is_render_view_last(const struct RenderData *rd, const char *viewname)
bool BKE_scene_multiview_is_render_view_first(const struct RenderData *rd, const char *viewname)
bool BLI_make_existing_file(const char *name)
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, size_t maxncpy) ATTR_NONNULL()
#define R_IMF_IMTYPE_MULTILAYER
#define STEREO_RIGHT_NAME
#define R_IMF_IMTYPE_OPENEXR
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei height
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
struct ImBuf * IMB_colormanagement_imbuf_for_write(struct ImBuf *ibuf, bool save_as_render, bool allocate_result, const struct ImageFormatData *image_format)
struct ImBuf * IMB_stereo3d_ImBuf(const struct ImageFormatData *im_format, struct ImBuf *ibuf_left, struct ImBuf *ibuf_right)
struct ImBuf * IMB_allocImBuf(unsigned int x, unsigned int y, unsigned char planes, unsigned int flags)
Contains defines and structs used throughout the imbuf module.
bool IMB_exr_begin_write(void *handle, const char *filepath, int width, int height, int compress, const struct StampData *stamp)
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)
void IMB_exr_add_view(void *handle, const char *name)
void IMB_exr_close(void *handle)
void IMB_exr_clear_channels(void *handle)
void * IMB_exr_get_handle_name(const char *name)
void IMB_exr_write_channels(void *handle)
float * IMB_exr_channel_rect(void *handle, const char *layname, const char *passname, const char *view)
unsigned int get_height() const
unsigned int get_width() const
void * get_handle(const char *filename)
OutputOpenExrMultiLayerMultiViewOperation(const Scene *scene, const RenderData *rd, const bNodeTree *tree, const char *path, char exr_codec, bool exr_half_float, const char *view_name)
void deinit_execution() override
Vector< OutputOpenExrLayer > layers_
StampData * create_stamp_data() const
void * get_handle(const char *filename)
void deinit_execution() override
OutputOpenExrSingleLayerMultiViewOperation(const Scene *scene, const RenderData *rd, const bNodeTree *tree, DataType datatype, const ImageFormatData *format, const char *path, const char *view_name, bool save_as_render)
SocketReader * image_input_
void deinit_execution() override
void * get_handle(const char *filename)
OutputStereoOperation(const Scene *scene, const RenderData *rd, const bNodeTree *tree, DataType datatype, const struct ImageFormatData *format, const char *path, const char *name, const char *view_name, bool save_as_render)
void IMB_freeImBuf(ImBuf *UNUSED(ibuf))
DataType
possible data types for sockets
void add_exr_channels(void *exrhandle, const char *layer_name, const DataType datatype, const char *view_name, const size_t width, bool use_half_float, float *buf)
int get_datatype_size(DataType datatype)
void free_exr_channels(void *exrhandle, const RenderData *rd, const char *layer_name, const DataType datatype)
struct SceneRenderView * next