#ifndef __bbUtilitiesImageContinuousDilate3D_h_INCLUDED__ #define __bbUtilitiesImageContinuousDilate3D_h_INCLUDED__ #include "bbtkAtomicBlackBox.h" #include "iostream" #include #include namespace bbUtilities { class /*BBTK_EXPORT*/ ImageContinuousDilate3D : public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE(ImageContinuousDilate3D,bbtk::AtomicBlackBox); //================================================================== BBTK_DECLARE_INPUT(In,vtkImageData*); BBTK_DECLARE_INPUT(KernelSizeX,int); BBTK_DECLARE_INPUT(KernelSizeY,int); BBTK_DECLARE_INPUT(KernelSizeZ,int); BBTK_DECLARE_OUTPUT(Out,vtkImageData*); BBTK_PROCESS(Process); void Process(); private: vtkImageContinuousDilate3D* imgdilate; }; BBTK_BEGIN_DESCRIBE_BLACK_BOX(ImageContinuousDilate3D,bbtk::AtomicBlackBox); BBTK_NAME("ImageContinuousDilate3D"); BBTK_AUTHOR("car-prie@uniandes.edu.co"); BBTK_DESCRIPTION("vtkImageContinuousDilate3D replaces a pixel with the maximum over an ellipsoidal neighborhood. If KernelSize of an axis is 1, no processing is done on that axis."); BBTK_CATEGORY("__CATEGORY__"); BBTK_INPUT(ImageContinuousDilate3D,In,"Image data",vtkImageData*,""); BBTK_INPUT(ImageContinuousDilate3D,KernelSizeX,"Kernel in X",int,""); BBTK_INPUT(ImageContinuousDilate3D,KernelSizeY,"Kernel in Y",int,""); BBTK_INPUT(ImageContinuousDilate3D,KernelSizeZ,"Kernel in Z",int,""); BBTK_OUTPUT(ImageContinuousDilate3D,Out,"First output",vtkImageData*,""); BBTK_END_DESCRIBE_BLACK_BOX(ImageContinuousDilate3D); } // EO namespace bbUtilities #endif // __bbUtilitiesImageContinuousDilate3D_h_INCLUDED__