Orfeo Toolbox  3.16
itkZeroFluxNeumannBoundaryCondition.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: itkZeroFluxNeumannBoundaryCondition.h,v $
5  Language: C++
6  Date: $Date: 2008-06-09 13:52:32 $
7  Version: $Revision: 1.21 $
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 __itkZeroFluxNeumannBoundaryCondition_h
18 #define __itkZeroFluxNeumannBoundaryCondition_h
19 #include "itkNeighborhood.h"
21 
22 namespace itk
23 {
24 
57 template<class TImage>
59  : public ImageBoundaryCondition<TImage>
60 {
61 public:
65 
67  typedef typename Superclass::PixelType PixelType;
69  typedef typename Superclass::IndexType IndexType;
72 
75 
77  itkStaticConstMacro(ImageDimension, unsigned int,Superclass::ImageDimension);
78 
81 
84  virtual PixelType operator()(const OffsetType& point_index,
85  const OffsetType& boundary_offset,
86  const NeighborhoodType *data) const;
87 
90  virtual PixelType operator()(
91  const OffsetType& point_index,
92  const OffsetType& boundary_offset,
93  const NeighborhoodType *data,
94  const NeighborhoodAccessorFunctorType &neighborhoodAccessorFunctor) const;
95 };
96 
97 } // end namespace itk
98 
99 // Define instantiation macro for this template.
100 #define ITK_TEMPLATE_ZeroFluxNeumannBoundaryCondition(_, EXPORT, x, y) namespace itk { \
101  _(1(class EXPORT ZeroFluxNeumannBoundaryCondition< ITK_TEMPLATE_1 x >)) \
102  namespace Templates { typedef ZeroFluxNeumannBoundaryCondition< ITK_TEMPLATE_1 x > \
103  ZeroFluxNeumannBoundaryCondition##y; } \
104  }
105 
106 #if ITK_TEMPLATE_EXPLICIT
107 # include "Templates/itkZeroFluxNeumannBoundaryCondition+-.h"
108 #endif
109 
110 #if ITK_TEMPLATE_TXX
112 #endif
113 
114 /*
115 #ifndef ITK_MANUAL_INSTANTIATION
116 #include "itkZeroFluxNeumannBoundaryCondition.txx"
117 #endif
118 */
119 
120 #endif

Generated at Sun Feb 3 2013 00:15:36 for Orfeo Toolbox with doxygen 1.8.1.1