DGtal  0.9.2
CSinglePassRange.h
1 
17 #pragma once
18 
31 #if defined(CSinglePassRange_RECURSES)
32 #error Recursive header files inclusion detected in CSinglePassRange.h
33 #else // defined(CSinglePassRange_RECURSES)
34 
35 #define CSinglePassRange_RECURSES
36 
37 #if !defined CSinglePassRange_h
38 
39 #define CSinglePassRange_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/CConstSinglePassRange.h"
46 
47 namespace DGtal
48 {
49 
50  namespace concepts {
51 
53  // class CSinglePassRange
86  template <typename T>
88  {
89  // ----------------------- Concept checks ------------------------------
90  public:
91  typedef typename T::Iterator Iterator;
92 
94 
96  {
97  Iterator it=i.begin();
98  it=i.end();
99  };
100 
101  private:
102  T i;
103  }; // end of concept CSinglePassRange
104 
105  } // namespace concepts
106 
107 } // namespace DGtal
108 
109 
110 
111 // //
113 
114 #endif // !defined CSinglePassRange_h
115 
116 #undef CSinglePassRange_RECURSES
117 #endif // else defined(CSinglePassRange_RECURSES)
Aim: Defines the concept describing a const single pass range.
Aim: Defines the concept describing a range.
BOOST_CONCEPT_ASSERT((boost_concepts::SinglePassIteratorConcept< Iterator >))
DGtal is the top-level namespace which contains all DGtal functions and types.
Go to http://www.boost.org/doc/libs/1_52_0/libs/iterator/doc/SinglePassIterator.html.