|
Blender
V2.93
|
#include <COM_MathBaseOperation.h>
Inherits blender::compositor::NodeOperation.
Inherited by blender::compositor::MathAbsoluteOperation, blender::compositor::MathAddOperation, blender::compositor::MathArcCosineOperation, blender::compositor::MathArcSineOperation, blender::compositor::MathArcTan2Operation, blender::compositor::MathArcTangentOperation, blender::compositor::MathCeilOperation, blender::compositor::MathCompareOperation, blender::compositor::MathCosineOperation, blender::compositor::MathDegreesOperation, blender::compositor::MathDivideOperation, blender::compositor::MathExponentOperation, blender::compositor::MathFloorOperation, blender::compositor::MathFractOperation, blender::compositor::MathGreaterThanOperation, blender::compositor::MathHyperbolicCosineOperation, blender::compositor::MathHyperbolicSineOperation, blender::compositor::MathHyperbolicTangentOperation, blender::compositor::MathInverseSqrtOperation, blender::compositor::MathLessThanOperation, blender::compositor::MathLogarithmOperation, blender::compositor::MathMaximumOperation, blender::compositor::MathMinimumOperation, blender::compositor::MathModuloOperation, blender::compositor::MathMultiplyAddOperation, blender::compositor::MathMultiplyOperation, blender::compositor::MathPingpongOperation, blender::compositor::MathPowerOperation, blender::compositor::MathRadiansOperation, blender::compositor::MathRoundOperation, blender::compositor::MathSignOperation, blender::compositor::MathSineOperation, blender::compositor::MathSmoothMaxOperation, blender::compositor::MathSmoothMinOperation, blender::compositor::MathSnapOperation, blender::compositor::MathSqrtOperation, blender::compositor::MathSubtractOperation, blender::compositor::MathTangentOperation, blender::compositor::MathTruncOperation, and blender::compositor::MathWrapOperation.
Public Member Functions | |
| void | initExecution () override |
| void | deinitExecution () override |
| void | determineResolution (unsigned int resolution[2], unsigned int preferredResolution[2]) override |
| void | setUseClamp (bool value) |
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 | 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... | |
| 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... | |
| 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 * | initializeTileData (rcti *) |
| virtual void | deinitializeTileData (rcti *, void *) |
| virtual MemoryBuffer * | getInputMemoryBuffer (MemoryBuffer **) |
| virtual std::unique_ptr< MetaData > | getMetaData () |
Protected Member Functions | |
| MathBaseOperation () | |
| void | clampIfNeeded (float color[4]) |
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 | |
| SocketReader * | m_inputValue1Operation |
| SocketReader * | m_inputValue2Operation |
| SocketReader * | m_inputValue3Operation |
| bool | m_useClamp |
Protected Attributes inherited from blender::compositor::NodeOperation | |
| unsigned int | m_width |
| unsigned int | m_height |
| NodeOperationFlags | flags |
this program converts an input color to an output value. it assumes we are in sRGB color space.
Definition at line 29 of file COM_MathBaseOperation.h.
|
protected |
Default constructor
Definition at line 25 of file COM_MathBaseOperation.cc.
References blender::compositor::NodeOperation::addInputSocket(), blender::compositor::NodeOperation::addOutputSocket(), m_inputValue1Operation, m_inputValue2Operation, m_inputValue3Operation, m_useClamp, and blender::compositor::Value.
|
protected |
Definition at line 69 of file COM_MathBaseOperation.cc.
References CLAMP, and m_useClamp.
Referenced by blender::compositor::MathAddOperation::executePixelSampled(), blender::compositor::MathSubtractOperation::executePixelSampled(), blender::compositor::MathMultiplyOperation::executePixelSampled(), blender::compositor::MathDivideOperation::executePixelSampled(), blender::compositor::MathSineOperation::executePixelSampled(), blender::compositor::MathCosineOperation::executePixelSampled(), blender::compositor::MathTangentOperation::executePixelSampled(), blender::compositor::MathHyperbolicSineOperation::executePixelSampled(), blender::compositor::MathHyperbolicCosineOperation::executePixelSampled(), blender::compositor::MathHyperbolicTangentOperation::executePixelSampled(), blender::compositor::MathArcSineOperation::executePixelSampled(), blender::compositor::MathArcCosineOperation::executePixelSampled(), blender::compositor::MathArcTangentOperation::executePixelSampled(), blender::compositor::MathPowerOperation::executePixelSampled(), blender::compositor::MathLogarithmOperation::executePixelSampled(), blender::compositor::MathMinimumOperation::executePixelSampled(), blender::compositor::MathMaximumOperation::executePixelSampled(), blender::compositor::MathRoundOperation::executePixelSampled(), blender::compositor::MathLessThanOperation::executePixelSampled(), blender::compositor::MathGreaterThanOperation::executePixelSampled(), blender::compositor::MathModuloOperation::executePixelSampled(), blender::compositor::MathAbsoluteOperation::executePixelSampled(), blender::compositor::MathRadiansOperation::executePixelSampled(), blender::compositor::MathDegreesOperation::executePixelSampled(), blender::compositor::MathArcTan2Operation::executePixelSampled(), blender::compositor::MathFloorOperation::executePixelSampled(), blender::compositor::MathCeilOperation::executePixelSampled(), blender::compositor::MathFractOperation::executePixelSampled(), blender::compositor::MathSqrtOperation::executePixelSampled(), blender::compositor::MathInverseSqrtOperation::executePixelSampled(), blender::compositor::MathSignOperation::executePixelSampled(), blender::compositor::MathExponentOperation::executePixelSampled(), blender::compositor::MathTruncOperation::executePixelSampled(), blender::compositor::MathSnapOperation::executePixelSampled(), blender::compositor::MathWrapOperation::executePixelSampled(), blender::compositor::MathPingpongOperation::executePixelSampled(), blender::compositor::MathCompareOperation::executePixelSampled(), blender::compositor::MathMultiplyAddOperation::executePixelSampled(), blender::compositor::MathSmoothMinOperation::executePixelSampled(), and blender::compositor::MathSmoothMaxOperation::executePixelSampled().
|
overridevirtual |
Deinitialize the execution
Reimplemented from blender::compositor::NodeOperation.
Definition at line 44 of file COM_MathBaseOperation.cc.
References m_inputValue1Operation, m_inputValue2Operation, and m_inputValue3Operation.
|
overridevirtual |
Determine resolution
Reimplemented from blender::compositor::NodeOperation.
Definition at line 51 of file COM_MathBaseOperation.cc.
References blender::compositor::NodeOperationInput::determineResolution(), blender::compositor::NodeOperation::determineResolution(), blender::compositor::NodeOperation::getInputSocket(), and blender::compositor::NodeOperation::setResolutionInputSocketIndex().
|
overridevirtual |
Initialize the execution
Reimplemented from blender::compositor::NodeOperation.
Definition at line 37 of file COM_MathBaseOperation.cc.
References blender::compositor::NodeOperation::getInputSocketReader(), m_inputValue1Operation, m_inputValue2Operation, and m_inputValue3Operation.
|
inline |
Definition at line 65 of file COM_MathBaseOperation.h.
Referenced by blender::compositor::MathNode::convertToOperations().
|
protected |
Prefetched reference to the inputProgram
Definition at line 34 of file COM_MathBaseOperation.h.
Referenced by deinitExecution(), blender::compositor::MathAddOperation::executePixelSampled(), blender::compositor::MathSubtractOperation::executePixelSampled(), blender::compositor::MathMultiplyOperation::executePixelSampled(), blender::compositor::MathDivideOperation::executePixelSampled(), blender::compositor::MathSineOperation::executePixelSampled(), blender::compositor::MathCosineOperation::executePixelSampled(), blender::compositor::MathTangentOperation::executePixelSampled(), blender::compositor::MathHyperbolicSineOperation::executePixelSampled(), blender::compositor::MathHyperbolicCosineOperation::executePixelSampled(), blender::compositor::MathHyperbolicTangentOperation::executePixelSampled(), blender::compositor::MathArcSineOperation::executePixelSampled(), blender::compositor::MathArcCosineOperation::executePixelSampled(), blender::compositor::MathArcTangentOperation::executePixelSampled(), blender::compositor::MathPowerOperation::executePixelSampled(), blender::compositor::MathLogarithmOperation::executePixelSampled(), blender::compositor::MathMinimumOperation::executePixelSampled(), blender::compositor::MathMaximumOperation::executePixelSampled(), blender::compositor::MathRoundOperation::executePixelSampled(), blender::compositor::MathLessThanOperation::executePixelSampled(), blender::compositor::MathGreaterThanOperation::executePixelSampled(), blender::compositor::MathModuloOperation::executePixelSampled(), blender::compositor::MathAbsoluteOperation::executePixelSampled(), blender::compositor::MathRadiansOperation::executePixelSampled(), blender::compositor::MathDegreesOperation::executePixelSampled(), blender::compositor::MathArcTan2Operation::executePixelSampled(), blender::compositor::MathFloorOperation::executePixelSampled(), blender::compositor::MathCeilOperation::executePixelSampled(), blender::compositor::MathFractOperation::executePixelSampled(), blender::compositor::MathSqrtOperation::executePixelSampled(), blender::compositor::MathInverseSqrtOperation::executePixelSampled(), blender::compositor::MathSignOperation::executePixelSampled(), blender::compositor::MathExponentOperation::executePixelSampled(), blender::compositor::MathTruncOperation::executePixelSampled(), blender::compositor::MathSnapOperation::executePixelSampled(), blender::compositor::MathWrapOperation::executePixelSampled(), blender::compositor::MathPingpongOperation::executePixelSampled(), blender::compositor::MathCompareOperation::executePixelSampled(), blender::compositor::MathMultiplyAddOperation::executePixelSampled(), blender::compositor::MathSmoothMinOperation::executePixelSampled(), blender::compositor::MathSmoothMaxOperation::executePixelSampled(), initExecution(), and MathBaseOperation().
|
protected |
Definition at line 35 of file COM_MathBaseOperation.h.
Referenced by deinitExecution(), blender::compositor::MathAddOperation::executePixelSampled(), blender::compositor::MathSubtractOperation::executePixelSampled(), blender::compositor::MathMultiplyOperation::executePixelSampled(), blender::compositor::MathDivideOperation::executePixelSampled(), blender::compositor::MathSineOperation::executePixelSampled(), blender::compositor::MathCosineOperation::executePixelSampled(), blender::compositor::MathTangentOperation::executePixelSampled(), blender::compositor::MathHyperbolicSineOperation::executePixelSampled(), blender::compositor::MathHyperbolicCosineOperation::executePixelSampled(), blender::compositor::MathHyperbolicTangentOperation::executePixelSampled(), blender::compositor::MathArcSineOperation::executePixelSampled(), blender::compositor::MathArcCosineOperation::executePixelSampled(), blender::compositor::MathArcTangentOperation::executePixelSampled(), blender::compositor::MathPowerOperation::executePixelSampled(), blender::compositor::MathLogarithmOperation::executePixelSampled(), blender::compositor::MathMinimumOperation::executePixelSampled(), blender::compositor::MathMaximumOperation::executePixelSampled(), blender::compositor::MathRoundOperation::executePixelSampled(), blender::compositor::MathLessThanOperation::executePixelSampled(), blender::compositor::MathGreaterThanOperation::executePixelSampled(), blender::compositor::MathModuloOperation::executePixelSampled(), blender::compositor::MathArcTan2Operation::executePixelSampled(), blender::compositor::MathSnapOperation::executePixelSampled(), blender::compositor::MathWrapOperation::executePixelSampled(), blender::compositor::MathPingpongOperation::executePixelSampled(), blender::compositor::MathCompareOperation::executePixelSampled(), blender::compositor::MathMultiplyAddOperation::executePixelSampled(), blender::compositor::MathSmoothMinOperation::executePixelSampled(), blender::compositor::MathSmoothMaxOperation::executePixelSampled(), initExecution(), and MathBaseOperation().
|
protected |
Definition at line 36 of file COM_MathBaseOperation.h.
Referenced by deinitExecution(), blender::compositor::MathWrapOperation::executePixelSampled(), blender::compositor::MathCompareOperation::executePixelSampled(), blender::compositor::MathMultiplyAddOperation::executePixelSampled(), blender::compositor::MathSmoothMinOperation::executePixelSampled(), blender::compositor::MathSmoothMaxOperation::executePixelSampled(), initExecution(), and MathBaseOperation().
|
protected |
Definition at line 38 of file COM_MathBaseOperation.h.
Referenced by clampIfNeeded(), and MathBaseOperation().