Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkSmartNeighborhoodIterator.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Insight Segmentation & Registration Toolkit
00004   Module:    $RCSfile: itkSmartNeighborhoodIterator.h,v $
00005   Language:  C++
00006   Date:      $Date: 2002/12/17 17:50:35 $
00007   Version:   $Revision: 1.12 $
00008 
00009   Copyright (c) 2002 Insight Consortium. All rights reserved.
00010   See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
00011 
00012      This software is distributed WITHOUT ANY WARRANTY; without even 
00013      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00014      PURPOSE.  See the above copyright notices for more information.
00015 
00016 =========================================================================*/
00017 #ifndef __itkSmartNeighborhoodIterator_h
00018 #define __itkSmartNeighborhoodIterator_h
00019 #include "itkMacro.h"
00020 #include "itkNeighborhoodIterator.h"
00021 
00022 namespace itk {
00023 
00096 template<class TImage,  class TBoundaryCondition
00097                        = ZeroFluxNeumannBoundaryCondition<TImage>  >
00098 class ITK_EXPORT SmartNeighborhoodIterator
00099   :  public NeighborhoodIterator<TImage>
00100 {
00101 public:
00103   typedef SmartNeighborhoodIterator Self;
00104   typedef NeighborhoodIterator<TImage> Superclass;
00105   
00107   typedef typename Superclass::InternalPixelType InternalPixelType;
00108   typedef typename Superclass::PixelType PixelType;
00109   typedef typename Superclass::ImageType ImageType;
00110   typedef typename Superclass::RegionType RegionType;
00111   typedef typename Superclass::SizeType SizeType;
00112   typedef typename Superclass::NeighborhoodType NeighborhoodType;
00113   typedef typename Superclass::IndexType IndexType;
00114   typedef typename Superclass::OffsetType OffsetType;
00115   typedef typename Superclass::ImageBoundaryConditionPointerType
00116     ImageBoundaryConditionPointerType;
00117   typedef typename Superclass::BoundaryConditionType BoundaryConditionType;
00118   typedef typename Superclass::OffsetValueType OffsetValueType;
00119   typedef typename Superclass::Iterator Iterator;
00120     
00122   itkStaticConstMacro(Dimension, unsigned int,
00123                       Superclass::Dimension);
00124 
00126   SmartNeighborhoodIterator()
00127     : Superclass() {
00128     itkGenericOutputMacro(<< "SmartNeighborhoodIterator has been deprecated and will be removed.  Use NeighborhoodIterator instead.");}
00129 
00131   SmartNeighborhoodIterator(const Self& orig)
00132     : Superclass(orig) {itkGenericOutputMacro(<< "SmartNeighborhoodIterator has been deprecated and will be removed.  Use NeighborhoodIterator instead."); }
00133   
00135   Self &operator=(const Self& orig)
00136     {
00137       Superclass::operator=(orig);
00138       return *this;
00139     }
00140 
00144   SmartNeighborhoodIterator(const SizeType& radius, ImageType *ptr,
00145                             const RegionType& region)
00146     : Superclass(radius, ptr, region) {  itkGenericOutputMacro(<< "SmartNeighborhoodIterator has been deprecated and will be removed.  Use NeighborhoodIterator instead."); }
00147 
00150   //  virtual void PrintSelf(std::ostream &, Indent) const;
00151 
00153   //  InternalPixelType *GetCenterPointer()
00154   //    { return (this->operator[]((this->Size())>>1)); }
00155 
00157   //  virtual void SetCenterPixel(const PixelType &p)
00158   //    { *( this->GetCenterPointer() ) = p; }
00159 
00162   //  virtual void SetNeighborhood(NeighborhoodType &);
00163 
00166   //  virtual void SetPixel(const unsigned long i, const PixelType &v);
00167 
00170   //  virtual void SetPixel(const unsigned long i, const PixelType &v, bool &status);
00171 
00172 };
00173 
00174 } // namespace itk
00175 
00176 #ifndef ITK_MANUAL_INSTANTIATION
00177 #include "itkSmartNeighborhoodIterator.txx"
00178 #endif
00179 
00180 #endif 
00181 

Generated at Fri May 21 01:15:19 2004 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000