/*=========================================================================
Program: vv http://www.creatis.insa-lyon.fr/rio/vv
- Authors belong to:
+ Authors belong to:
- University of LYON http://www.universite-lyon.fr/
- Léon Bérard cancer center http://www.centreleonberard.fr
- CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
// clitk include
#include "clitkIO.h"
#include "clitkImageCommon.h"
-#include "clitkMorphoMath_ggo.h"
#include "clitkConditionalBinaryErodeImageFilter.h"
#include "clitkConditionalBinaryDilateImageFilter.h"
//--------------------------------------------------------------------
template<class ImageType>
- class ITK_EXPORT MorphoMathFilter:
- public clitk::FilterBase,
- public itk::ImageToImageFilter<ImageType, ImageType>
+ class ITK_EXPORT MorphoMathFilter:
+ public clitk::FilterBase,
+ public itk::ImageToImageFilter<ImageType, ImageType>
{
-
- public:
+
+ public:
/** Standard class typedefs. */
typedef itk::ImageToImageFilter<ImageType, ImageType> Superclass;
typedef MorphoMathFilter<ImageType> Self;
typedef itk::SmartPointer<const Self> ConstPointer;
/** Method for creation through the object factory. */
- itkNewMacro(Self);
-
+ itkNewMacro(Self);
+
/** Run-time type information (and related methods). */
itkTypeMacro(AddRelativePositionConstraintToLabelImageFilter, ImageToImageFilter);
FILTERBASE_INIT;
/** Some convenient typedefs. */
typedef typename ImageType::ConstPointer ImageConstPointer;
typedef typename ImageType::Pointer ImagePointer;
- typedef typename ImageType::RegionType RegionType;
+ typedef typename ImageType::RegionType RegionType;
typedef typename ImageType::PixelType PixelType;
typedef typename ImageType::SpacingType SpacingType;
typedef typename ImageType::SizeType SizeType;
typedef typename ImageType::PointType PointType;
typedef float InternalPixelType;
typedef itk::Image<InternalPixelType, ImageType::ImageDimension> InternalImageType;
-
+
/** ImageDimension constants */
itkStaticConstMacro(ImageDimension, unsigned int, ImageType::ImageDimension);
typedef itk::Image<float, ImageDimension> FloatImageType;
/** Operation types */
typedef enum { Erode = 0, Dilate = 1,
- Close = 2, Open = 3,
+ Close = 2, Open = 3,
CondErode = 4, CondDilate = 5
} OperationTypeEnumeration;
-
+
/** Options */
itkGetConstMacro(VerboseFlag, bool);
itkSetMacro(VerboseFlag, bool);
itkSetMacro(ForegroundValue, PixelType);
void SetOperationType(int type);
-
+
itkGetConstMacro(RadiusInMM, PointType);
void SetRadiusInMM(PointType & p);
itkGetConstMacro(BoundaryToForegroundFlag, bool);
itkSetMacro(BoundaryToForegroundFlag, bool);
itkBooleanMacro(BoundaryToForegroundFlag);
-
+
itkGetConstMacro(ExtendSupportFlag, bool);
itkSetMacro(ExtendSupportFlag, bool);
itkBooleanMacro(ExtendSupportFlag);
-
+
protected:
MorphoMathFilter();
virtual ~MorphoMathFilter();
MorphoMathFilter(const Self&); //purposely not implemented
void operator=(const Self&); //purposely not implemented
};
-
+
} // end namespace clitk
#ifndef ITK_MANUAL_INSTANTIATION
#include "clitkMorphoMathFilter.txx"
#endif
-
+
#endif //#define CLITKMORPHOMATHFILTER_H