DGtal  0.9.4.1
PGMReader.h
1 
17 #pragma once
18 
31 #if defined(PGMReader_RECURSES)
32 #error Recursive header files inclusion detected in PGMReader.h
33 #else // defined(PGMReader_RECURSES)
34 
35 #define PGMReader_RECURSES
36 
37 #if !defined PGMReader_h
38 
39 #define PGMReader_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/Common.h"
45 #include "DGtal/base/CUnaryFunctor.h"
46 
48 
49 #ifdef _MSC_VER
50 #pragma warning(disable : 4290)
51 #endif
52 
53 namespace DGtal
54 {
55 
57 // class PGMReader
95 template <typename TImageContainer,
96  typename TFunctor = functors::Cast<typename TImageContainer::Value>>
97 struct PGMReader
98 {
99  // ----------------------- Standard services ------------------------------
100  public:
101 
102  typedef TImageContainer ImageContainer;
103  typedef typename TImageContainer::Value Value;
105 
106  typedef TFunctor Functor;
107 
109 
111 
112 
113 
114  BOOST_STATIC_ASSERT( (ImageContainer::Domain::dimension == 2) ||
115  (ImageContainer::Domain::dimension == 3));
116 
132  static ImageContainer importPGM(const std::string & aFilename,
133  const Functor & aFunctor = Functor(),
134  bool topbotomOrder = true);
135 
136 
137 
138 
150  static ImageContainer importPGM3D(const std::string & aFilename,
151  const Functor & aFunctor = Functor());
152 
153 
154 
155  }; // end of class PGMReader
156 
157 
158 
159 } // namespace DGtal
160 
161 
163 // Includes inline functions.
164 #include "DGtal/io/readers/PGMReader.ih"
165 
166 
167 // //
169 
170 #endif // !defined PGMReader_h
171 
172 #undef PGMReader_RECURSES
173 #endif // else defined(PGMReader_RECURSES)
Aim: Import a 2D or 3D using the Netpbm formats (ASCII mode).
Definition: PGMReader.h:97
BOOST_STATIC_ASSERT((ImageContainer::Domain::dimension==2)||(ImageContainer::Domain::dimension==3))
TFunctor Functor
Definition: PGMReader.h:106
Aim: Defines a unary functor, which associates arguments to results.
Definition: CUnaryFunctor.h:89
static ImageContainer importPGM(const std::string &aFilename, const Functor &aFunctor=Functor(), bool topbotomOrder=true)
BOOST_CONCEPT_ASSERT((concepts::CUnaryFunctor< TFunctor, unsigned char, Value >))
DGtal is the top-level namespace which contains all DGtal functions and types.
TImageContainer ImageContainer
Definition: PGMReader.h:102
FreemanChain< int >::Vector Vector
TImageContainer::Domain::Vector Vector
Definition: PGMReader.h:104
static ImageContainer importPGM3D(const std::string &aFilename, const Functor &aFunctor=Functor())
TImageContainer::Value Value
Definition: PGMReader.h:103