|
Blender
V2.93
|
#include <COM_OutputFileOperation.h>
Inherits blender::compositor::NodeOperation.
Inherited by blender::compositor::OutputOpenExrMultiLayerMultiViewOperation.
Public Member Functions | |
| OutputOpenExrMultiLayerOperation (const Scene *scene, const RenderData *rd, const bNodeTree *tree, const char *path, char exr_codec, bool exr_half_float, const char *viewName) | |
| void | add_layer (const char *name, DataType datatype, bool use_layer) |
| void | executeRegion (rcti *rect, unsigned int tileNumber) override |
| when a chunk is executed by a CPUDevice, this method is called More... | |
| bool | isOutputOperation (bool) const override |
| isOutputOperation determines whether this operation is an output of the ExecutionSystem during rendering or editing. More... | |
| void | initExecution () override |
| void | deinitExecution () override |
| eCompositorPriority | getRenderPriority () const override |
| get the render priority of this node. More... | |
Public Member Functions inherited from blender::compositor::NodeOperation | |
| virtual | ~NodeOperation () |
| void | set_name (const std::string name) |
| const std::string | get_name () const |
| void | set_id (const int id) |
| const int | get_id () const |
| const NodeOperationFlags | get_flags () const |
| unsigned int | getNumberOfInputSockets () const |
| unsigned int | getNumberOfOutputSockets () const |
| NodeOperationOutput * | getOutputSocket (unsigned int index=0) |
| NodeOperationInput * | getInputSocket (unsigned int index) |
| virtual void | determineResolution (unsigned int resolution[2], unsigned int preferredResolution[2]) |
| determine the resolution of this node More... | |
| void | setbNodeTree (const bNodeTree *tree) |
| virtual void | executeOpenCLRegion (OpenCLDevice *, rcti *, unsigned int, MemoryBuffer **, MemoryBuffer *) |
| when a chunk is executed by an OpenCLDevice, this method is called More... | |
| virtual void | executeOpenCL (OpenCLDevice *, MemoryBuffer *, cl_mem, MemoryBuffer **, std::list< cl_mem > *, std::list< cl_kernel > *) |
| custom handle to add new tasks to the OpenCL command queue in order to execute a chunk on an GPUDevice. More... | |
| void | setResolution (unsigned int resolution[2]) |
| set the resolution More... | |
| virtual bool | isActiveViewerOutput () const |
| is this operation the active viewer output user can select an ViewerNode to be active (the result of this node will be drawn on the backdrop). More... | |
| virtual bool | determineDependingAreaOfInterest (rcti *input, ReadBufferOperation *readOperation, rcti *output) |
| void | setResolutionInputSocketIndex (unsigned int index) |
| set the index of the input socket that will determine the resolution of this operation More... | |
| bool | isBraked () const |
| void | updateDraw () |
| unsigned int | getWidth () const |
| unsigned int | getHeight () const |
| void | readSampled (float result[4], float x, float y, PixelSampler sampler) |
| void | readFiltered (float result[4], float x, float y, float dx[2], float dy[2]) |
| void | read (float result[4], int x, int y, void *chunkData) |
| virtual void * | initializeTileData (rcti *) |
| virtual void | deinitializeTileData (rcti *, void *) |
| virtual MemoryBuffer * | getInputMemoryBuffer (MemoryBuffer **) |
| virtual std::unique_ptr< MetaData > | getMetaData () |
Protected Member Functions | |
| StampData * | createStampData () const |
Protected Member Functions inherited from blender::compositor::NodeOperation | |
| NodeOperation () | |
| void | addInputSocket (DataType datatype, ResizeMode resize_mode=ResizeMode::Center) |
| void | addOutputSocket (DataType datatype) |
| void | setWidth (unsigned int width) |
| void | setHeight (unsigned int height) |
| SocketReader * | getInputSocketReader (unsigned int inputSocketindex) |
| NodeOperation * | getInputOperation (unsigned int inputSocketindex) |
| void | deinitMutex () |
| void | initMutex () |
| void | lockMutex () |
| void | unlockMutex () |
| void | setComplex (bool complex) |
| set whether this operation is complex More... | |
| virtual void | executePixelSampled (float[4], float, float, PixelSampler) |
| calculate a single pixel More... | |
| virtual void | executePixel (float output[4], int x, int y, void *) |
| calculate a single pixel More... | |
| virtual void | executePixelFiltered (float[4], float, float, float[2], float[2]) |
| calculate a single pixel using an EWA filter More... | |
Protected Attributes | |
| const Scene * | m_scene |
| const RenderData * | m_rd |
| const bNodeTree * | m_tree |
| char | m_path [FILE_MAX] |
| char | m_exr_codec |
| bool | m_exr_half_float |
| Vector< OutputOpenExrLayer > | m_layers |
| const char * | m_viewName |
Protected Attributes inherited from blender::compositor::NodeOperation | |
| unsigned int | m_width |
| unsigned int | m_height |
| NodeOperationFlags | flags |
Definition at line 89 of file COM_OutputFileOperation.h.
| blender::compositor::OutputOpenExrMultiLayerOperation::OutputOpenExrMultiLayerOperation | ( | const Scene * | scene, |
| const RenderData * | rd, | ||
| const bNodeTree * | tree, | ||
| const char * | path, | ||
| char | exr_codec, | ||
| bool | exr_half_float, | ||
| const char * | viewName | ||
| ) |
Definition at line 310 of file COM_OutputFileOperation.cc.
References BLI_strncpy(), m_exr_codec, m_exr_half_float, m_path, m_rd, m_scene, m_tree, m_viewName, blender::compositor::RESOLUTION_INPUT_ANY, scene, blender::compositor::NodeOperation::setResolutionInputSocketIndex(), and tree.
| void blender::compositor::OutputOpenExrMultiLayerOperation::add_layer | ( | const char * | name, |
| DataType | datatype, | ||
| bool | use_layer | ||
| ) |
Definition at line 329 of file COM_OutputFileOperation.cc.
References blender::compositor::NodeOperation::addInputSocket(), and m_layers.
|
protected |
Definition at line 337 of file COM_OutputFileOperation.cc.
References blender::bke::cryptomatte::BKE_cryptomatte_extract_layer_name(), BKE_stamp_info_from_scene_static(), BLI_strnlen(), m_layers, m_scene, and RenderResult::stamp_data.
Referenced by deinitExecution(), and blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle().
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 388 of file COM_OutputFileOperation.cc.
References blender::compositor::add_exr_channels(), BKE_image_path_from_imtype(), BKE_main_blendfile_path_from_global(), BKE_scene_multiview_view_suffix_get(), BKE_stamp_data_free(), BLI_make_existing_file(), RenderData::cfra, createStampData(), FILE_MAX, blender::compositor::NodeOperation::getHeight(), blender::compositor::NodeOperation::getWidth(), height, blender::compositor::OutputOpenExrLayer::imageInput, IMB_exr_begin_write(), IMB_exr_close(), IMB_exr_get_handle(), IMB_exr_write_channels(), m_exr_codec, m_exr_half_float, m_layers, m_path, m_rd, m_viewName, MEM_freeN, R_EXTENSION, R_IMF_IMTYPE_MULTILAYER, and width.
|
overridevirtual |
when a chunk is executed by a CPUDevice, this method is called
| rect | the rectangle of the chunk (location and size) |
| chunkNumber | the chunkNumber to be calculated |
| memoryBuffers | all input MemoryBuffer's needed |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 373 of file COM_OutputFileOperation.cc.
References blender::compositor::OutputOpenExrLayer::datatype, blender::compositor::OutputOpenExrLayer::imageInput, m_layers, m_tree, blender::compositor::OutputOpenExrLayer::outputBuffer, and blender::compositor::write_buffer_rect().
|
inlineoverridevirtual |
get the render priority of this node.
Reimplemented from blender::compositor::NodeOperation.
Definition at line 121 of file COM_OutputFileOperation.h.
References blender::compositor::Low.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 361 of file COM_OutputFileOperation.cc.
References blender::compositor::NodeOperation::getHeight(), blender::compositor::NodeOperation::getInputSocketReader(), blender::compositor::NodeOperation::getWidth(), blender::compositor::init_buffer(), and m_layers.
|
inlineoverridevirtual |
isOutputOperation determines whether this operation is an output of the ExecutionSystem during rendering or editing.
Default behavior if not overridden, this operation will not be evaluated as being an output of the ExecutionSystem.
| rendering | [true false] true: rendering false: editing |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 115 of file COM_OutputFileOperation.h.
|
protected |
Definition at line 96 of file COM_OutputFileOperation.h.
Referenced by deinitExecution(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle(), and OutputOpenExrMultiLayerOperation().
|
protected |
Definition at line 97 of file COM_OutputFileOperation.h.
Referenced by blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::deinitExecution(), deinitExecution(), and OutputOpenExrMultiLayerOperation().
|
protected |
Definition at line 98 of file COM_OutputFileOperation.h.
Referenced by add_layer(), createStampData(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::deinitExecution(), deinitExecution(), executeRegion(), blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::get_handle(), and initExecution().
|
protected |
Definition at line 95 of file COM_OutputFileOperation.h.
Referenced by blender::compositor::OutputOpenExrMultiLayerMultiViewOperation::deinitExecution(), deinitExecution(), and OutputOpenExrMultiLayerOperation().
|
protected |
|
protected |
Definition at line 91 of file COM_OutputFileOperation.h.
Referenced by createStampData(), and OutputOpenExrMultiLayerOperation().
|
protected |
Definition at line 93 of file COM_OutputFileOperation.h.
Referenced by executeRegion(), and OutputOpenExrMultiLayerOperation().
|
protected |