31 #if defined(AvnaimEtAl2x2DetSignComputer_RECURSES)
32 #error Recursive header files inclusion detected in AvnaimEtAl2x2DetSignComputer.h
35 #define AvnaimEtAl2x2DetSignComputer_RECURSES
37 #if !defined AvnaimEtAl2x2DetSignComputer_h
39 #define AvnaimEtAl2x2DetSignComputer_h
44 #include "DGtal/base/Common.h"
45 #include "DGtal/base/ExpressionTemplates.h"
47 #include "DGtal/kernel/NumberTraits.h"
48 #include "DGtal/kernel/CInteger.h"
49 #include "DGtal/kernel/CEuclideanRing.h"
50 #include "DGtal/kernel/CBoundedNumber.h"
70 template <
typename TNumber>
79 static TNumber
compute(
const TNumber& a,
const TNumber& b)
89 static float compute(
const float& a,
const float& b)
91 return std::floor(a / b);
97 static double compute(
const double& a,
const double& b)
99 return std::floor(a / b);
105 static double compute(
const double& a,
const double& b)
107 return std::floor(a / b);
143 template <
typename TInteger>
322 template <
typename TInteger>
331 #include "DGtal/geometry/tools/determinant/AvnaimEtAl2x2DetSignComputer.ih"
338 #undef AvnaimEtAl2x2DetSignComputer_RECURSES
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
Aim: The concept CBoundedNumber specifies what are the bounded numbers. Models of this concept should...
Aim: Defines the mathematical concept equivalent to a unitary commutative ring with a division operat...
Aim: Concept checking for Integer Numbers. More precisely, this concept is a refinement of both CEucl...
static double compute(const double &a, const double &b)
static float compute(const float &a, const float &b)
static double compute(const double &a, const double &b)
Aim: Small stucture that provides a static method returning the Euclidean division of two integers.
static TNumber compute(const TNumber &a, const TNumber &b)