KWStyle - itkBloxBoundaryPointImage.h
 
Matrix View
Description

1 /*=========================================================================
2
3   Program:   Insight Segmentation & Registration Toolkit
4   Module:    $RCSfile: itkBloxBoundaryPointImage.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 __itkBloxBoundaryPointImage_h
18 #define __itkBloxBoundaryPointImage_h
19
20 #include "itkPoint.h"
21 #include "itkBloxBoundaryPointPixel.h"
22 #include "itkBloxImage.h"
23
24 namespace itk
25 {
26
27 /**
28  * \class BloxBoundaryPointImage
29  * \brief Templated n-dimensional image class used to store linked lists.
30  * \ingroup ImageObjects
31  *
32  * */
33
34 template <unsigned int VImageDimension>
35 class ITK_EXPORT BloxBoundaryPointImage :
36 IND **public BloxImage< BloxBoundaryPointPixel<VImageDimension >, VImageDimension >
37 {
38 public:
39   /** Standard class typedefs. */
40   typedef BloxBoundaryPointImage  Self;
41   typedef BloxImage<BloxBoundaryPointPixel<VImageDimension>,
42 TDA,IND ********************VImageDimension >  Superclass;
43 TDA   typedef SmartPointer<Self>  Pointer;
44 TDA   typedef SmartPointer<const Self>  ConstPointer;
45   
46   /** Run-time type information (and related methods). */
47   itkTypeMacro(BloxBoundaryPointImage, BloxImage);
48
49   /** Method for creation through the object factory. */
50   itkNewMacro(Self);
51
52   /** Pixel typedef support. Used to declare pixel type in filters
53    * or other operations. */
54   typedef BloxBoundaryPointPixel<VImageDimension> PixelType;
55
56   /** Internal Pixel representation. Used to maintain a uniform API
57    * with Image Adaptors and allow to keep a particular internal
58    * representation of data while showing a different external 
59    * representation. */
60   typedef PixelType InternalPixelType;
61
62   typedef typename Superclass::IOPixelType   IOPixelType;
63
64   /**  Accessor type that convert data between internal and external
65    *  representations. */
66   typedef DefaultPixelAccessor< PixelType > AccessorType;
67
68   /** Convenient typedefs obtained from Superclass. */
69   typedef typename Superclass::PixelContainer PixelContainer;
70 TDA   typedef typename Superclass::SizeType SizeType;
71 TDA   typedef typename Superclass::IndexType IndexType;
72 TDA   typedef typename Superclass::OffsetType OffsetType;
73 TDA   typedef typename Superclass::RegionType RegionType;
74   
75   /** A pointer to the pixel container. */
76   typedef typename PixelContainer::Pointer PixelContainerPointer;
77
78   /** Set the number of boundary points in the image (done by a filter) */
79   itkSetMacro(NumBoundaryPoints, unsigned long int);
80
81   /** Get the number of boundary points in the image */
82   itkGetConstReferenceMacro(NumBoundaryPoints, unsigned long int);
83
84 protected:
85   BloxBoundaryPointImage();
86   virtual ~BloxBoundaryPointImage();
87   void PrintSelf(std::ostream& os, Indent indent) const;
88
89 private:
90   BloxBoundaryPointImage(const Self&); //purposely not implemented
91   void operator=(const Self&); //purposely not implemented
92
93   /** The total number of boundary points stored in the image */
94   unsigned long int m_NumBoundaryPoints;
95 };
96
97 // end namespace itk
98
99 #ifndef ITK_MANUAL_INSTANTIATION
100 #include "itkBloxBoundaryPointImage.txx"
101 #endif
102
103 #endif
104

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