DGtal  1.4.beta
C2x2DetComputer.h
1 
17 #pragma once
18 
31 #if defined(C2x2DetComputer_RECURSES)
32 #error Recursive header files inclusion detected in C2x2DetComputer.h
33 #else // defined(C2x2DetComputer_RECURSES)
35 #define C2x2DetComputer_RECURSES
36 
37 #if !defined C2x2DetComputer_h
39 #define C2x2DetComputer_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/Common.h"
45 
46 #include "DGtal/kernel/CEuclideanRing.h"
47 #include "DGtal/kernel/CSignedNumber.h"
49 
50 namespace DGtal
51 {
52 
54  // class C2x2DetComputer
106  template <typename T>
108  {
109  // ----------------------- Concept checks ------------------------------
110  public:
111  typedef typename T::ArgumentInteger ArgumentType;
113 
114  typedef typename T::ResultInteger ResultType;
116 
118  {
120  myX.init(myA, myB);
122  }
123  // ------------------------- Private Datas --------------------------------
124  private:
125  T myX;
128  // ------------------------- Internals ------------------------------------
129  private:
130 
131  }; // end of concept C2x2DetComputer
132 
133 } // namespace DGtal
134 
135 // //
137 
138 #endif // !defined C2x2DetComputer_h
139 
140 #undef C2x2DetComputer_RECURSES
141 #endif // else defined(C2x2DetComputer_RECURSES)
void sameType(const T &, const T &)
Definition: ConceptUtils.h:117
DGtal is the top-level namespace which contains all DGtal functions and types.
Aim: This concept gathers all models that are able to compute the (sign of the) determinant of a 2x2 ...
T::ResultInteger ResultType
BOOST_CONCEPT_USAGE(C2x2DetComputer)
BOOST_CONCEPT_ASSERT((concepts::CEuclideanRing< ArgumentType >))
BOOST_CONCEPT_ASSERT((concepts::CSignedNumber< ResultType >))
T::ArgumentInteger ArgumentType
Aim: Defines the mathematical concept equivalent to a unitary commutative ring with a division operat...
Aim: Concept checking for Signed Numbers. Models of this concept should be listed in NumberTraits cla...
Definition: CSignedNumber.h:98
Go to http://www.sgi.com/tech/stl/Assignable.html.
Definition: Boost.dox:32
Go to http://www.sgi.com/tech/stl/CopyConstructible.html.
Definition: Boost.dox:34
Go to http://www.sgi.com/tech/stl/DefaultConstructible.html.
Definition: Boost.dox:30