36 const float *black = it.in(2);
37 const float *white = it.in(3);
41 const float fac = *it.in(0);
42 const float *image = it.in(1);
46 else if (fac <= 0.0f) {
83 const float fac = *it.in(0);
84 const float *image = it.in(1);
88 else if (fac <= 0.0f) {
MINLINE void copy_v3_v3(float r[3], const float a[3])
void interp_v3_v3v3(float r[3], const float a[3], const float b[3], float t)
void init_execution() override
void update_memory_buffer_partial(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
ConstantLevelColorCurveOperation()
void init_execution() override
void update_memory_buffer_partial(MemoryBuffer *output, const rcti &area, Span< MemoryBuffer * > inputs) override
void init_execution() override
CurveMapping * curve_mapping_
a MemoryBuffer contains access to the data
void add_output_socket(DataType datatype)
void add_input_socket(DataType datatype, ResizeMode resize_mode=ResizeMode::Center)
void set_canvas_input_index(unsigned int index)
set the index of the input socket that will determine the canvas of this operation
typename BuffersIteratorBuilder< T >::Iterator BuffersIterator