diff options
Diffstat (limited to 'source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cc')
-rw-r--r-- | source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cc | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cc b/source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cc index 8e6aa7e8db8..436fdb16e8d 100644 --- a/source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cc +++ b/source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cc @@ -23,12 +23,12 @@ namespace blender::compositor { ProjectorLensDistortionOperation::ProjectorLensDistortionOperation() { - this->addInputSocket(DataType::Color); - this->addInputSocket(DataType::Value); - this->addOutputSocket(DataType::Color); + this->add_input_socket(DataType::Color); + this->add_input_socket(DataType::Value); + this->add_output_socket(DataType::Color); this->flags.complex = true; - inputProgram_ = nullptr; - dispersionAvailable_ = false; + input_program_ = nullptr; + dispersion_available_ = false; dispersion_ = 0.0f; } @@ -44,87 +44,87 @@ void ProjectorLensDistortionOperation::init_data() } } -void ProjectorLensDistortionOperation::initExecution() +void ProjectorLensDistortionOperation::init_execution() { - this->initMutex(); - inputProgram_ = this->getInputSocketReader(0); + this->init_mutex(); + input_program_ = this->get_input_socket_reader(0); } -void *ProjectorLensDistortionOperation::initializeTileData(rcti * /*rect*/) +void *ProjectorLensDistortionOperation::initialize_tile_data(rcti * /*rect*/) { - updateDispersion(); - void *buffer = inputProgram_->initializeTileData(nullptr); + update_dispersion(); + void *buffer = input_program_->initialize_tile_data(nullptr); return buffer; } -void ProjectorLensDistortionOperation::executePixel(float output[4], int x, int y, void *data) +void ProjectorLensDistortionOperation::execute_pixel(float output[4], int x, int y, void *data) { - float inputValue[4]; - const float height = this->getHeight(); - const float width = this->getWidth(); + float input_value[4]; + const float height = this->get_height(); + const float width = this->get_width(); const float v = (y + 0.5f) / height; const float u = (x + 0.5f) / width; - MemoryBuffer *inputBuffer = (MemoryBuffer *)data; - inputBuffer->readBilinear(inputValue, (u * width + kr2_) - 0.5f, v * height - 0.5f); - output[0] = inputValue[0]; - inputBuffer->read(inputValue, x, y); - output[1] = inputValue[1]; - inputBuffer->readBilinear(inputValue, (u * width - kr2_) - 0.5f, v * height - 0.5f); - output[2] = inputValue[2]; + MemoryBuffer *input_buffer = (MemoryBuffer *)data; + input_buffer->read_bilinear(input_value, (u * width + kr2_) - 0.5f, v * height - 0.5f); + output[0] = input_value[0]; + input_buffer->read(input_value, x, y); + output[1] = input_value[1]; + input_buffer->read_bilinear(input_value, (u * width - kr2_) - 0.5f, v * height - 0.5f); + output[2] = input_value[2]; output[3] = 1.0f; } -void ProjectorLensDistortionOperation::deinitExecution() +void ProjectorLensDistortionOperation::deinit_execution() { - this->deinitMutex(); - inputProgram_ = nullptr; + this->deinit_mutex(); + input_program_ = nullptr; } -bool ProjectorLensDistortionOperation::determineDependingAreaOfInterest( - rcti *input, ReadBufferOperation *readOperation, rcti *output) +bool ProjectorLensDistortionOperation::determine_depending_area_of_interest( + rcti *input, ReadBufferOperation *read_operation, rcti *output) { - rcti newInput; - if (dispersionAvailable_) { - newInput.ymax = input->ymax; - newInput.ymin = input->ymin; - newInput.xmin = input->xmin - kr2_ - 2; - newInput.xmax = input->xmax + kr2_ + 2; + rcti new_input; + if (dispersion_available_) { + new_input.ymax = input->ymax; + new_input.ymin = input->ymin; + new_input.xmin = input->xmin - kr2_ - 2; + new_input.xmax = input->xmax + kr2_ + 2; } else { - rcti dispInput; - BLI_rcti_init(&dispInput, 0, 5, 0, 5); - if (this->getInputOperation(1)->determineDependingAreaOfInterest( - &dispInput, readOperation, output)) { + rcti disp_input; + BLI_rcti_init(&disp_input, 0, 5, 0, 5); + if (this->get_input_operation(1)->determine_depending_area_of_interest( + &disp_input, read_operation, output)) { return true; } - newInput.xmin = input->xmin - 7; /* (0.25f * 20 * 1) + 2 == worse case dispersion */ - newInput.ymin = input->ymin; - newInput.ymax = input->ymax; - newInput.xmax = input->xmax + 7; /* (0.25f * 20 * 1) + 2 == worse case dispersion */ + new_input.xmin = input->xmin - 7; /* (0.25f * 20 * 1) + 2 == worse case dispersion */ + new_input.ymin = input->ymin; + new_input.ymax = input->ymax; + new_input.xmax = input->xmax + 7; /* (0.25f * 20 * 1) + 2 == worse case dispersion */ } - if (this->getInputOperation(0)->determineDependingAreaOfInterest( - &newInput, readOperation, output)) { + if (this->get_input_operation(0)->determine_depending_area_of_interest( + &new_input, read_operation, output)) { return true; } return false; } /* TODO(manzanilla): to be removed with tiled implementation. */ -void ProjectorLensDistortionOperation::updateDispersion() +void ProjectorLensDistortionOperation::update_dispersion() { - if (dispersionAvailable_) { + if (dispersion_available_) { return; } - this->lockMutex(); - if (!dispersionAvailable_) { + this->lock_mutex(); + if (!dispersion_available_) { float result[4]; - this->getInputSocketReader(1)->readSampled(result, 1, 1, PixelSampler::Nearest); + this->get_input_socket_reader(1)->read_sampled(result, 1, 1, PixelSampler::Nearest); dispersion_ = result[0]; kr_ = 0.25f * max_ff(min_ff(dispersion_, 1.0f), 0.0f); kr2_ = kr_ * 20; - dispersionAvailable_ = true; + dispersion_available_ = true; } - this->unlockMutex(); + this->unlock_mutex(); } void ProjectorLensDistortionOperation::determine_canvas(const rcti &preferred_area, rcti &r_area) @@ -165,8 +165,8 @@ void ProjectorLensDistortionOperation::update_memory_buffer_partial(MemoryBuffer Span<MemoryBuffer *> inputs) { const MemoryBuffer *input_image = inputs[0]; - const float height = this->getHeight(); - const float width = this->getWidth(); + const float height = this->get_height(); + const float width = this->get_width(); float color[4]; for (BuffersIterator<float> it = output->iterate_with({}, area); !it.is_end(); ++it) { const float v = (it.y + 0.5f) / height; |