X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=itk%2FclitkSliceBySliceRelativePositionFilter.h;h=5989e20054c5229a0146543a5be06dba1d60444c;hb=05b7f2c4675de2d3582fd88099294a54ca09787b;hp=be31dfc0fab8a6a0c6bdfac458f5e93255999fdd;hpb=acce45844cc7d465d97939f42a56d81a6cf80179;p=clitk.git diff --git a/itk/clitkSliceBySliceRelativePositionFilter.h b/itk/clitkSliceBySliceRelativePositionFilter.h index be31dfc..5989e20 100644 --- a/itk/clitkSliceBySliceRelativePositionFilter.h +++ b/itk/clitkSliceBySliceRelativePositionFilter.h @@ -53,6 +53,7 @@ namespace clitk { /** ImageDimension constants */ itkStaticConstMacro(ImageDimension, unsigned int, ImageType::ImageDimension); typedef itk::Image FloatImageType; + typedef itk::Image FloatSliceType; /** Some convenient typedefs. */ typedef typename ImageType::ConstPointer ImageConstPointer; @@ -70,21 +71,36 @@ namespace clitk { void SetInputObject(const ImageType * image); // Options - void PrintOptions(); + void PrintOptions(std::ostream & os = std::cout); itkGetConstMacro(Direction, int); itkSetMacro(Direction, int); - itkGetConstMacro(UniqueConnectedComponentBySlice, bool); - itkSetMacro(UniqueConnectedComponentBySlice, bool); - itkBooleanMacro(UniqueConnectedComponentBySlice); + itkGetConstMacro(UniqueConnectedComponentBySliceFlag, bool); + itkSetMacro(UniqueConnectedComponentBySliceFlag, bool); + itkBooleanMacro(UniqueConnectedComponentBySliceFlag); itkGetConstMacro(IgnoreEmptySliceObjectFlag, bool); itkSetMacro(IgnoreEmptySliceObjectFlag, bool); itkBooleanMacro(IgnoreEmptySliceObjectFlag); - itkGetConstMacro(UseASingleObjectConnectedComponentBySliceFlag, bool); - itkSetMacro(UseASingleObjectConnectedComponentBySliceFlag, bool); - itkBooleanMacro(UseASingleObjectConnectedComponentBySliceFlag); + itkGetConstMacro(UseTheLargestObjectCCLFlag, bool); + itkSetMacro(UseTheLargestObjectCCLFlag, bool); + itkBooleanMacro(UseTheLargestObjectCCLFlag); + + itkGetConstMacro(ObjectCCLSelectionFlag, bool); + itkSetMacro(ObjectCCLSelectionFlag, bool); + itkBooleanMacro(ObjectCCLSelectionFlag); + itkGetConstMacro(ObjectCCLSelectionDimension, int); + itkSetMacro(ObjectCCLSelectionDimension, int); + itkGetConstMacro(ObjectCCLSelectionDirection, int); + itkSetMacro(ObjectCCLSelectionDirection, int); + itkGetConstMacro(ObjectCCLSelectionIgnoreSingleCCLFlag, bool); + itkSetMacro(ObjectCCLSelectionIgnoreSingleCCLFlag, bool); + itkBooleanMacro(ObjectCCLSelectionIgnoreSingleCCLFlag); + + itkGetConstMacro(VerboseSlicesFlag, bool); + itkSetMacro(VerboseSlicesFlag, bool); + itkBooleanMacro(VerboseSlicesFlag); protected: SliceBySliceRelativePositionFilter(); @@ -98,10 +114,15 @@ namespace clitk { ImagePointer object; ImagePointer m_working_input; ImagePointer m_working_object; - bool m_UniqueConnectedComponentBySlice; + bool m_UniqueConnectedComponentBySliceFlag; int m_Direction; bool m_IgnoreEmptySliceObjectFlag; - bool m_UseASingleObjectConnectedComponentBySliceFlag; + bool m_UseTheLargestObjectCCLFlag; + bool m_ObjectCCLSelectionFlag; + int m_ObjectCCLSelectionDimension; + int m_ObjectCCLSelectionDirection; + bool m_ObjectCCLSelectionIgnoreSingleCCLFlag; + bool m_VerboseSlicesFlag; private: SliceBySliceRelativePositionFilter(const Self&); //purposely not implemented @@ -117,4 +138,8 @@ namespace clitk { #include "clitkSliceBySliceRelativePositionFilter.txx" #endif +typedef unsigned char PixelType_uchar; +typedef itk::Image ImageType_uchar; +extern template class clitk::SliceBySliceRelativePositionFilter; + #endif