aimstil  5.0.5
ImageVolumetricIterator.h
Go to the documentation of this file.
1 #ifndef TIL_IMAGECVOLUMETRICITERATOR_H
2 #define TIL_IMAGECVOLUMETRICITERATOR_H
3 
4 // includes from TIL library
6 #include "til/Range.h"
7 
8 
9 // Namespace
10 namespace til {
11 
12 
13 // A class to iterate through all values of an image while knowing the
14 // image coordinates of the current pixel
15 // Allows to read and write to image
16 
17 
18 template < typename T >
19 //class ImageCVolumetricIterator : public ConstImageCVolumetricIterator<T>
20 class VolumetricIterator<ImageC<T> > : public ConstVolumetricIterator<ImageC<T> >
21 {
22 
23 public: // typedefs
24 
25  //typedef T value_type;
26  typedef T& reference;
28  // TODO: SHould'nt this be a trait?
29  //typedef T& StarType;
30 
31 public: // constructors & destructor
32 
37  : ConstVolumetricIterator<ImageC<T> >(im, box) { }
38 
39 public: // functions
40 
41  // Get reference of the current pixel
42  reference operator* () const { return *(this->getIndex()); }
43 };
44 
45 
46 
47 
48 
49 } // namespace
50 
51 #endif
52 
Belongs to package Box Do not include directly, include til/Box.h instead.
Definition: Accumulator.h:10
INLINE numeric_array< typename combine< T1, T2 >::type, 3 > operator*(const Affine< T1 > &a, const numeric_array< T2, 3 > &v)
Multiplication between a 3D affine transform and a 3D vector.
Image class using contiguous memory.
boost::enable_if_c< boost::is_same< TIndex, std::size_t >::value &&!boost::is_same< TPointer, std::size_t >::value, TIndex >::type getIndex(const std::vector< T, TAlloc > &c, TPointer pElem)