]> Creatis software - clitk.git/blobdiff - itk/clitkAddRelativePositionConstraintToLabelImageFilter.h
add option to display memory usage if statgrab is installed
[clitk.git] / itk / clitkAddRelativePositionConstraintToLabelImageFilter.h
index 83400ef5b47db4400c726e7a2f914234de6e6b09..3a82ee22f9f379955874b42c8677c51a013ed527 100644 (file)
@@ -23,7 +23,7 @@
 #include "clitkFilterBase.h"
 
 // itk
-#include "itkPasteImageFilter.h"
+#include <itkPasteImageFilter.h>
 
 // itk ENST
 #include "RelativePositionPropImageFilter.h"
@@ -43,15 +43,15 @@ namespace clitk {
   */
   //--------------------------------------------------------------------
   
-  template <class TImageType>
+  template <class ImageType>
   class ITK_EXPORT AddRelativePositionConstraintToLabelImageFilter:
     public clitk::FilterBase, 
-    public itk::ImageToImageFilter<TImageType, TImageType> 
+    public itk::ImageToImageFilter<ImageType, ImageType> 
   {
 
   public:
     /** Standard class typedefs. */
-    typedef itk::ImageToImageFilter<TImageType, TImageType> Superclass;
+    typedef itk::ImageToImageFilter<ImageType, ImageType>      Superclass;
     typedef AddRelativePositionConstraintToLabelImageFilter    Self;
     typedef itk::SmartPointer<Self>                            Pointer;
     typedef itk::SmartPointer<const Self>                      ConstPointer;
@@ -64,16 +64,17 @@ namespace clitk {
     FILTERBASE_INIT;
 
     /** Some convenient typedefs. */
-    typedef TImageType                      ImageType;
     typedef typename ImageType::ConstPointer ImageConstPointer;
     typedef typename ImageType::Pointer      ImagePointer;
     typedef typename ImageType::RegionType   RegionType; 
     typedef typename ImageType::PixelType    PixelType;
     typedef typename ImageType::SpacingType  SpacingType;
     typedef typename ImageType::SizeType     SizeType;
+    typedef typename ImageType::IndexType    IndexType;
+    typedef typename ImageType::PointType    PointType;
     
     /** ImageDimension constants */
-    itkStaticConstMacro(ImageDimension, unsigned int, TImageType::ImageDimension);
+    itkStaticConstMacro(ImageDimension, unsigned int, ImageType::ImageDimension);
     typedef itk::Image<float, ImageDimension> FloatImageType;
 
     /** Orientation types */
@@ -89,27 +90,44 @@ namespace clitk {
     // Options
     void SetOrientationType(OrientationTypeEnumeration orientation);
     itkGetConstMacro(OrientationType, OrientationTypeEnumeration);
+    void SetOrientationTypeString(std::string s);
+    itkGetConstMacro(OrientationTypeString, std::string);
+
     void SetAngle1(double a);
     void SetAngle2(double a);
     itkGetConstMacro(Angle1, double);
     itkGetConstMacro(Angle2, double);
+
     itkGetConstMacro(ResampleBeforeRelativePositionFilter, bool);
     itkSetMacro(ResampleBeforeRelativePositionFilter, bool);
     itkBooleanMacro(ResampleBeforeRelativePositionFilter);
+
     itkGetConstMacro(IntermediateSpacing, double);
     itkSetMacro(IntermediateSpacing, double);
+
     itkGetConstMacro(FuzzyThreshold, double);
     itkSetMacro(FuzzyThreshold, double);
+
     itkGetConstMacro(BackgroundValue, PixelType);
     itkSetMacro(BackgroundValue, PixelType);
+
     itkGetConstMacro(ObjectBackgroundValue, PixelType);
     itkSetMacro(ObjectBackgroundValue, PixelType);
 
+    itkGetConstMacro(AutoCropFlag, bool);
+    itkSetMacro(AutoCropFlag, bool);
+    itkBooleanMacro(AutoCropFlag);
+
+    itkGetConstMacro(NotFlag, bool);
+    itkSetMacro(NotFlag, bool);
+    itkBooleanMacro(NotFlag);
+
   protected:
     AddRelativePositionConstraintToLabelImageFilter();
     virtual ~AddRelativePositionConstraintToLabelImageFilter() {}
     
     OrientationTypeEnumeration m_OrientationType;
+    std::string m_OrientationTypeString;
     double m_IntermediateSpacing;
     double m_FuzzyThreshold;
     PixelType m_BackgroundValue;
@@ -117,6 +135,8 @@ namespace clitk {
     double m_Angle1;
     double m_Angle2;
     bool m_ResampleBeforeRelativePositionFilter;
+    bool m_AutoCropFlag;
+    bool m_NotFlag;
 
     virtual void GenerateOutputInformation();
     virtual void GenerateInputRequestedRegion();