DGtal  1.2.0
CDenseVector.h
1 
17 #pragma once
18 
31 #if defined(CDenseVector_RECURSES)
32 #error Recursive header files inclusion detected in CDenseVector.h
33 #else // defined(CDenseVector_RECURSES)
35 #define CDenseVector_RECURSES
36 
37 #if !defined CDenseVector_h
39 #define CDenseVector_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/Common.h"
45 #include "DGtal/math/linalg/CVector.h"
47 
48 namespace DGtal
49 {
50 namespace concepts
51 {
53 // class CDenseVector
87 template <typename T>
88 struct CDenseVector : CVector<T>
89 {
90  // ----------------------- Concept checks ------------------------------
91 public:
92  typedef typename T::Index Index;
93  typedef typename T::Scalar Scalar;
94 
96  {
97  Scalar& aa = z(i);
98  aa = aa; // to avoid compiler warning
99 
101  }
102 
104  {
105  Scalar bb = z(i);
106  bb = bb; // to avoid compiler warning
107  }
108 
109  // ------------------------- Private Datas --------------------------------
110 private:
111  T z;
113 
114  // ------------------------- Internals ------------------------------------
115 private:
116 
117 }; // end of concept CDenseVector
118 }
119 } // namespace DGtal
120 
121 // //
123 
124 #endif // !defined CDenseVector_h
125 
126 #undef CDenseVector_RECURSES
127 #endif // else defined(CDenseVector_RECURSES)
DGtal is the top-level namespace which contains all DGtal functions and types.
Aim: Represent any dynamic or static sized matrix having dense representation.
Definition: CDenseVector.h:89
BOOST_CONCEPT_USAGE(CDenseVector)
Definition: CDenseVector.h:95
Aim: Represent any static or dynamic sized column vector having sparse or dense representation.
Definition: CVector.h:91