Blender V5.0
parallel_reduction.cc File Reference
#include <cmath>
#include <limits>
#include "BLI_index_range.hh"
#include "BLI_math_base.hh"
#include "BLI_math_vector.hh"
#include "BLI_math_vector_types.hh"
#include "BLI_task.hh"
#include "MEM_guardedalloc.h"
#include "GPU_compute.hh"

Go to the source code of this file.

Namespaces

namespace  blender
namespace  blender::compositor

Functions

static floatblender::compositor::parallel_reduction_dispatch (blender::gpu::Texture *texture, gpu::Shader *shader, blender::gpu::TextureFormat format)
template<typename Value, typename Function, typename Reduction>
static Value blender::compositor::parallel_reduce (const int2 range, const Value &identity, const Function &function, const Reduction &reduction)
static float blender::compositor::sum_red_gpu (Context &context, const Result &result)
static float blender::compositor::sum_red_cpu (const Result &result)
float blender::compositor::sum_red (Context &context, const Result &result)
static float blender::compositor::sum_green_gpu (Context &context, const Result &result)
static float blender::compositor::sum_green_cpu (const Result &result)
float blender::compositor::sum_green (Context &context, const Result &result)
static float blender::compositor::sum_blue_gpu (Context &context, const Result &result)
static float blender::compositor::sum_blue_cpu (const Result &result)
float blender::compositor::sum_blue (Context &context, const Result &result)
static float blender::compositor::sum_luminance_gpu (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::sum_luminance_cpu (const Result &result, const float3 &luminance_coefficients)
float blender::compositor::sum_luminance (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::sum_log_luminance_gpu (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::sum_log_luminance_cpu (const Result &result, const float3 &luminance_coefficients)
float blender::compositor::sum_log_luminance (Context &context, const Result &result, const float3 &luminance_coefficients)
static float4 blender::compositor::sum_color_gpu (Context &context, const Result &result)
static float4 blender::compositor::sum_color_cpu (const Result &result)
float4 blender::compositor::sum_color (Context &context, const Result &result)
static float blender::compositor::sum_red_squared_difference_gpu (Context &context, const Result &result, const float subtrahend)
static float blender::compositor::sum_red_squared_difference_cpu (const Result &result, const float subtrahend)
float blender::compositor::sum_red_squared_difference (Context &context, const Result &result, const float subtrahend)
static float blender::compositor::sum_green_squared_difference_gpu (Context &context, const Result &result, const float subtrahend)
static float blender::compositor::sum_green_squared_difference_cpu (const Result &result, const float subtrahend)
float blender::compositor::sum_green_squared_difference (Context &context, const Result &result, const float subtrahend)
static float blender::compositor::sum_blue_squared_difference_gpu (Context &context, const Result &result, const float subtrahend)
static float blender::compositor::sum_blue_squared_difference_cpu (const Result &result, const float subtrahend)
float blender::compositor::sum_blue_squared_difference (Context &context, const Result &result, const float subtrahend)
static float blender::compositor::sum_luminance_squared_difference_gpu (Context &context, const Result &result, const float3 &luminance_coefficients, const float subtrahend)
static float blender::compositor::sum_luminance_squared_difference_cpu (const Result &result, const float3 &luminance_coefficients, const float subtrahend)
float blender::compositor::sum_luminance_squared_difference (Context &context, const Result &result, const float3 &luminance_coefficients, const float subtrahend)
static float blender::compositor::maximum_luminance_gpu (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::maximum_luminance_cpu (const Result &result, const float3 &luminance_coefficients)
float blender::compositor::maximum_luminance (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::maximum_float_gpu (Context &context, const Result &result)
static float blender::compositor::maximum_float_cpu (const Result &result)
float blender::compositor::maximum_float (Context &context, const Result &result)
static float2 blender::compositor::maximum_float2_gpu (Context &context, const Result &result)
static float2 blender::compositor::maximum_float2_cpu (const Result &result)
float2 blender::compositor::maximum_float2 (Context &context, const Result &result)
static float blender::compositor::maximum_float_in_range_gpu (Context &context, const Result &result, const float lower_bound, const float upper_bound)
static float blender::compositor::maximum_float_in_range_cpu (const Result &result, const float lower_bound, const float upper_bound)
float blender::compositor::maximum_float_in_range (Context &context, const Result &result, const float lower_bound, const float upper_bound)
static float blender::compositor::minimum_luminance_gpu (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::minimum_luminance_cpu (const Result &result, const float3 &luminance_coefficients)
float blender::compositor::minimum_luminance (Context &context, const Result &result, const float3 &luminance_coefficients)
static float blender::compositor::minimum_float_gpu (Context &context, const Result &result)
static float blender::compositor::minimum_float_cpu (const Result &result)
float blender::compositor::minimum_float (Context &context, const Result &result)
static float blender::compositor::minimum_float_in_range_gpu (Context &context, const Result &result, const float lower_bound, const float upper_bound)
static float blender::compositor::minimum_float_in_range_cpu (const Result &result, const float lower_bound, const float upper_bound)
float blender::compositor::minimum_float_in_range (Context &context, const Result &result, const float lower_bound, const float upper_bound)