diff options
author | Manuel Castilla <manzanillawork@gmail.com> | 2021-08-08 15:50:20 +0300 |
---|---|---|
committer | Manuel Castilla <manzanillawork@gmail.com> | 2021-08-08 18:11:54 +0300 |
commit | 723c45a8e60077b570e20d6b1b774c83d82a8e70 (patch) | |
tree | 538b7c58e088d4404c84300dbad7b57a8f633a41 /source/blender/compositor/operations/COM_FastGaussianBlurOperation.h | |
parent | 80484794165c8a0a62dcb6309c111dede6f0c9be (diff) |
Compositor: Full frame Bokeh Blur and Blur nodes
Diffstat (limited to 'source/blender/compositor/operations/COM_FastGaussianBlurOperation.h')
-rw-r--r-- | source/blender/compositor/operations/COM_FastGaussianBlurOperation.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/source/blender/compositor/operations/COM_FastGaussianBlurOperation.h b/source/blender/compositor/operations/COM_FastGaussianBlurOperation.h index c25afe6c4a4..f42fc76a119 100644 --- a/source/blender/compositor/operations/COM_FastGaussianBlurOperation.h +++ b/source/blender/compositor/operations/COM_FastGaussianBlurOperation.h @@ -38,8 +38,19 @@ class FastGaussianBlurOperation : public BlurBaseOperation { static void IIR_gauss(MemoryBuffer *src, float sigma, unsigned int channel, unsigned int xy); void *initializeTileData(rcti *rect) override; + void init_data() override; void deinitExecution() override; void initExecution() override; + + void get_area_of_interest(int input_idx, const rcti &output_area, rcti &r_input_area) override; + void update_memory_buffer_started(MemoryBuffer *output, + const rcti &area, + Span<MemoryBuffer *> inputs) override; + void update_memory_buffer_partial(MemoryBuffer *UNUSED(output), + const rcti &UNUSED(area), + Span<MemoryBuffer *> UNUSED(inputs)) override + { + } }; enum { @@ -48,7 +59,7 @@ enum { FAST_GAUSS_OVERLAY_MAX = 1, }; -class FastGaussianBlurValueOperation : public NodeOperation { +class FastGaussianBlurValueOperation : public MultiThreadedOperation { private: float m_sigma; MemoryBuffer *m_iirgaus; @@ -80,6 +91,14 @@ class FastGaussianBlurValueOperation : public NodeOperation { { this->m_overlay = overlay; } + + void get_area_of_interest(int input_idx, const rcti &output_area, rcti &r_input_area) override; + void update_memory_buffer_started(MemoryBuffer *output, + const rcti &area, + Span<MemoryBuffer *> inputs) override; + void update_memory_buffer_partial(MemoryBuffer *output, + const rcti &area, + Span<MemoryBuffer *> inputs) override; }; } // namespace blender::compositor |