KWStyle - itkBloxBoundaryProfileImage.h
 
Matrix View
Description

1 /*=========================================================================
2
3   Program:   Insight Segmentation & Registration Toolkit
4   Module:    $RCSfile: itkBloxBoundaryProfileImage.h.html,v $
5   Language:  C++
6   Date:      $Date: 2006/01/17 19:15:33 $
7   Version:   $Revision: 1.4 $
8
9   Copyright (c) Insight Software Consortium. All rights reserved.
10   See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11
12      This software is distributed WITHOUT ANY WARRANTY; without even 
13      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14      PURPOSE.  See the above copyright notices for more information.
15
16 =========================================================================*/
17 #ifndef __itkBloxBoundaryProfileImage_h
18 #define __itkBloxBoundaryProfileImage_h
19
20 #include "vnl/vnl_vector_fixed.h"
21 #include "itkPoint.h"
22 #include "itkVector.h"
23 #include "itkCovariantVector.h"
24 #include "itkBloxBoundaryPointItem.h"
25 #include "itkBloxBoundaryPointPixel.h"
26 #include "itkBloxBoundaryPointImage.h"
27
28 #include "itkBloxBoundaryProfileItem.h"
29 #include "itkBloxBoundaryProfilePixel.h"
30 #include "itkBloxImage.h"
31 #include "itkImage.h"
32
33 namespace itk
34 {
35
36 /** \class BloxBoundaryProfileImage
37  * \brief N-dimensional image class which handles BloxBoundaryProfileItems
38  *
39 LEN  * A BloxBoundaryProfileImage stores and processes BloxBoundaryProfileItem's (in BloxPixel
40 LEN  * linked lists). The primary task of BloxBoundaryProfileImage is finding boundary profiles
41  * and storing them in the correct blox location.
42  * \ingroup ImageObjects
43  */
44
45 template <unsigned int VImageDimension>
46 class ITK_EXPORT BloxBoundaryProfileImage :
47 public BloxImage<BloxBoundaryProfilePixel<VImageDimension >, VImageDimension>
48 {
49 public:
50
51   /** Standard image class typedefs. */
52   typedef BloxBoundaryProfileImage  Self;
53   typedef BloxImage<BloxBoundaryProfilePixel<VImageDimension>,
54 TDA,IND ********************VImageDimension >  Superclass;
55 TDA   typedef SmartPointer<Self>  Pointer;
56   typedef SmartPointer<const Self>  ConstPointer;
57   
58   itkNewMacro(Self);
59
60   itkTypeMacro(BloxBoundaryProfileImage, BloxImage);
61
62   typedef BloxBoundaryProfilePixel<VImageDimension> PixelType;
63 TDA   typedef PixelType InternalPixelType;
64
65   typedef DefaultPixelAccessor< PixelType > AccessorType;
66
67   typedef Point<double, VImageDimension> PositionType;
68
69   typedef typename PositionType::VectorType VectorType;
70
71   typedef CovariantVector<double, VImageDimension> GradientType;
72
73   typedef typename Superclass::PixelContainer PixelContainer;
74 TDA   typedef typename Superclass::SizeType SizeType;
75 TDA   typedef typename Superclass::IndexType IndexType;
76 TDA   typedef typename Superclass::OffsetType OffsetType;
77 TDA   typedef typename Superclass::RegionType RegionType;
78   
79   typedef typename PixelContainer::Pointer PixelContainerPointer;
80   
81 protected:
82   BloxBoundaryProfileImage();
83   virtual ~BloxBoundaryProfileImage();
84   void PrintSelf(std::ostream& os, Indent indent) const;
85
86 private:
87   BloxBoundaryProfileImage(const Self&); //purposely not implemented
88   void operator=(const Self&); //purposely not implemented
89 };
90
91 // end namespace itk
92
93 #ifndef ITK_MANUAL_INSTANTIATION
94 #include "itkBloxBoundaryProfileImage.txx"
95 #endif
96
97 #endif
98

Generated by KWStyle 1.0b on Tuesday January,17 at 02:14:00PM
© Kitware Inc.