|
Blender
V2.93
|
#include <COM_ReadBufferOperation.h>
Inherits blender::compositor::NodeOperation.
Inherited by blender::compositor::WrapOperation.
Public Member Functions | |
| ReadBufferOperation (DataType datatype) | |
| void | setMemoryProxy (MemoryProxy *memoryProxy) |
| MemoryProxy * | getMemoryProxy () const |
| void | determineResolution (unsigned int resolution[2], unsigned int preferredResolution[2]) override |
| determine the resolution of this node More... | |
| void * | initializeTileData (rcti *rect) override |
| void | executePixelSampled (float output[4], float x, float y, PixelSampler sampler) override |
| calculate a single pixel More... | |
| void | executePixelExtend (float output[4], float x, float y, PixelSampler sampler, MemoryBufferExtend extend_x, MemoryBufferExtend extend_y) |
| void | executePixelFiltered (float output[4], float x, float y, float dx[2], float dy[2]) override |
| calculate a single pixel using an EWA filter More... | |
| void | setOffset (unsigned int offset) |
| unsigned int | getOffset () const |
| bool | determineDependingAreaOfInterest (rcti *input, ReadBufferOperation *readOperation, rcti *output) override |
| MemoryBuffer * | getInputMemoryBuffer (MemoryBuffer **memoryBuffers) override |
| void | readResolutionFromWriteBuffer () |
| void | updateMemoryBuffer () |
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 bool | isOutputOperation (bool) const |
| isOutputOperation determines whether this operation is an output of the ExecutionSystem during rendering or editing. More... | |
| void | setbNodeTree (const bNodeTree *tree) |
| virtual void | initExecution () |
| virtual void | executeRegion (rcti *, unsigned int) |
| when a chunk is executed by a CPUDevice, this method is called More... | |
| 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... | |
| virtual void | deinitExecution () |
| 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... | |
| void | setResolutionInputSocketIndex (unsigned int index) |
| set the index of the input socket that will determine the resolution of this operation More... | |
| virtual eCompositorPriority | getRenderPriority () const |
| get the render priority of this node. 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 | deinitializeTileData (rcti *, void *) |
| virtual std::unique_ptr< MetaData > | getMetaData () |
Additional Inherited Members | |
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 | executePixel (float output[4], int x, int y, void *) |
| calculate a single pixel More... | |
Protected Attributes inherited from blender::compositor::NodeOperation | |
| unsigned int | m_width |
| unsigned int | m_height |
| NodeOperationFlags | flags |
Definition at line 27 of file COM_ReadBufferOperation.h.
| blender::compositor::ReadBufferOperation::ReadBufferOperation | ( | DataType | datatype | ) |
Definition at line 25 of file COM_ReadBufferOperation.cc.
References blender::compositor::NodeOperation::addOutputSocket(), blender::compositor::NodeOperation::flags, and blender::compositor::NodeOperationFlags::is_read_buffer_operation.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Reimplemented in blender::compositor::WrapOperation.
Definition at line 113 of file COM_ReadBufferOperation.cc.
References BLI_rcti_init(), output, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by blender::compositor::WrapOperation::determineDependingAreaOfInterest().
|
overridevirtual |
determine the resolution of this node
| resolution | the result of this operation |
| preferredResolution | the preferable resolution as no resolution could be determined |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 39 of file COM_ReadBufferOperation.cc.
References blender::compositor::WriteBufferOperation::determineResolution(), blender::compositor::MemoryProxy::getExecutor(), blender::compositor::MemoryProxy::getWriteBufferOperation(), blender::compositor::WriteBufferOperation::isSingleValue(), blender::compositor::ExecutionGroup::setResolution(), and blender::compositor::NodeOperation::setResolution().
| void blender::compositor::ReadBufferOperation::executePixelExtend | ( | float | output[4], |
| float | x, | ||
| float | y, | ||
| PixelSampler | sampler, | ||
| MemoryBufferExtend | extend_x, | ||
| MemoryBufferExtend | extend_y | ||
| ) |
Definition at line 80 of file COM_ReadBufferOperation.cc.
References blender::compositor::Nearest, output, blender::compositor::MemoryBuffer::read(), blender::compositor::MemoryBuffer::readBilinear(), x, and y.
Referenced by blender::compositor::WrapOperation::executePixelSampled().
|
overridevirtual |
calculate a single pixel using an EWA filter
| result | is a float[4] array to store the result |
| x | the x-coordinate of the pixel to calculate in image space |
| y | the y-coordinate of the pixel to calculate in image space |
| dx | |
| dy | |
| inputBuffers | chunks that can be read by their ReadBufferOperation. |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 99 of file COM_ReadBufferOperation.cc.
References output, blender::compositor::MemoryBuffer::read(), blender::compositor::MemoryBuffer::readEWA(), x, and y.
|
overridevirtual |
calculate a single pixel
| result | is a float[4] array to store the result |
| x | the x-coordinate of the pixel to calculate in image space |
| y | the y-coordinate of the pixel to calculate in image space |
| inputBuffers | chunks that can be read by their ReadBufferOperation. |
Reimplemented from blender::compositor::NodeOperation.
Reimplemented in blender::compositor::WrapOperation.
Definition at line 55 of file COM_ReadBufferOperation.cc.
References blender::compositor::Bicubic, blender::compositor::Bilinear, blender::compositor::Nearest, output, blender::compositor::MemoryBuffer::read(), blender::compositor::MemoryBuffer::readBilinear(), x, and y.
|
inlineoverridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 69 of file COM_ReadBufferOperation.h.
Referenced by blender::compositor::OpenCLDevice::COM_clAttachMemoryBufferToKernelParameter().
|
inline |
Definition at line 41 of file COM_ReadBufferOperation.h.
Referenced by blender::compositor::find_reachable_operations_recursive(), blender::compositor::NodeOperationBuilder::group_operations(), blender::compositor::operator<<(), and updateMemoryBuffer().
|
inline |
Definition at line 62 of file COM_ReadBufferOperation.h.
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 34 of file COM_ReadBufferOperation.cc.
| void blender::compositor::ReadBufferOperation::readResolutionFromWriteBuffer | ( | ) |
Definition at line 124 of file COM_ReadBufferOperation.cc.
References blender::compositor::NodeOperation::getHeight(), blender::compositor::NodeOperation::getWidth(), blender::compositor::MemoryProxy::getWriteBufferOperation(), blender::compositor::NodeOperation::setHeight(), and blender::compositor::NodeOperation::setWidth().
Referenced by blender::compositor::NodeOperationBuilder::add_input_buffers(), and blender::compositor::NodeOperationBuilder::add_output_buffers().
|
inline |
Definition at line 36 of file COM_ReadBufferOperation.h.
Referenced by blender::compositor::NodeOperationBuilder::add_input_buffers(), blender::compositor::NodeOperationBuilder::add_output_buffers(), blender::compositor::SocketBufferNode::convertToOperations(), and blender::compositor::TranslateNode::convertToOperations().
|
inline |
Definition at line 58 of file COM_ReadBufferOperation.h.
Referenced by blender::compositor::update_read_buffer_offset().
| void blender::compositor::ReadBufferOperation::updateMemoryBuffer | ( | ) |
Definition at line 133 of file COM_ReadBufferOperation.cc.
References blender::compositor::MemoryProxy::getBuffer(), and getMemoryProxy().
Referenced by blender::compositor::link_write_buffers().