Namespaces | Macros | Functions
arithmetic.h File Reference
#include <type_traits>
#include "ecvl/core/datatype_matrix.h"
#include "ecvl/core/image.h"
#include "ecvl/core/type_promotion.h"
#include "ecvl/core/standard_errors.h"

Go to the source code of this file.

Namespaces

 ecvl
 

Macros

#define BINARY_ARITHMETIC_OPERATION_IMAGE_IMAGE(Function)
 
#define BINARY_ARITHMETIC_OPERATION_IMAGE_SCALAR(Function)
 
#define BINARY_ARITHMETIC_OPERATION_SCALAR_IMAGE(Function)
 

Functions

void ecvl::Add (const Image &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 Adds two source Images storing the result into a destination Image. More...
 
template<typename ST2 >
void ecvl::Add (const Image &src1, const ST2 &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 Adds a scalar value to an Images storing the result into a destination Image. More...
 
template<typename ST1 >
void ecvl::Add (const ST1 &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 Adds a scalar value to an Images storing the result into a destination Image. More...
 
void ecvl::Sub (const Image &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
template<typename ST2 >
void ecvl::Sub (const Image &src1, const ST2 &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
template<typename ST1 >
void ecvl::Sub (const ST1 &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
void ecvl::Mul (const Image &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
template<typename ST2 >
void ecvl::Mul (const Image &src1, const ST2 &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
template<typename ST1 >
void ecvl::Mul (const ST1 &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
void ecvl::Div (const Image &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
template<typename ST2 >
void ecvl::Div (const Image &src1, const ST2 &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
template<typename ST1 >
void ecvl::Div (const ST1 &src1, const Image &src2, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 
void ecvl::Neg (const Image &src, Image &dst, DataType dst_type=DataType::none, bool saturate=true)
 Negation of an Image. More...
 

Macro Definition Documentation

◆ BINARY_ARITHMETIC_OPERATION_IMAGE_IMAGE

#define BINARY_ARITHMETIC_OPERATION_IMAGE_IMAGE (   Function)
Value:
inline void Function(const Image& src1, const Image& src2, Image& dst, DataType dst_type = DataType::none, bool saturate = true) \
{ \
src1.hal_->Function(src1, src2, dst, dst_type, saturate); \
} \
DataType
DataType is an enum class which defines data types allowed for images.
Definition: datatype.h:43

Definition at line 28 of file arithmetic.h.

◆ BINARY_ARITHMETIC_OPERATION_IMAGE_SCALAR

#define BINARY_ARITHMETIC_OPERATION_IMAGE_SCALAR (   Function)
Value:
template<typename ST2> \
void Function(const Image& src1, const ST2& src2, Image& dst, DataType dst_type = DataType::none, bool saturate = true) \
{ \
src1.hal_->Function(src1, src2, dst, dst_type, saturate); \
} \
DataType
DataType is an enum class which defines data types allowed for images.
Definition: datatype.h:43

Definition at line 34 of file arithmetic.h.

◆ BINARY_ARITHMETIC_OPERATION_SCALAR_IMAGE

#define BINARY_ARITHMETIC_OPERATION_SCALAR_IMAGE (   Function)
Value:
template<typename ST1> \
void Function(const ST1& src1, const Image& src2, Image& dst, DataType dst_type = DataType::none, bool saturate = true) \
{ \
src2.hal_->Function(src1, src2, dst, dst_type, saturate); \
} \
DataType
DataType is an enum class which defines data types allowed for images.
Definition: datatype.h:43

Definition at line 41 of file arithmetic.h.