#ifndef __bbSlicerMaskImage_h_INCLUDED__ #define __bbSlicerMaskImage_h_INCLUDED__ #include "bbSlicer_EXPORT.h" #include "bbtkAtomicBlackBox.h" #include #include #include #include #include #include #include #include #include #include #include #include "CreationTool.h" namespace bbSlicer { class bbSlicer_EXPORT MaskImage : public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE ( MaskImage , bbtk::AtomicBlackBox ) ; // GENERATED ARGS BBTK_DECLARE_INPUT ( InputVolume , std::string ); BBTK_DECLARE_INPUT ( MaskVolume , std::string ); BBTK_DECLARE_INPUT ( OutputVolume , std::string ); BBTK_DECLARE_INPUT ( Label , int ); BBTK_DECLARE_INPUT ( Replace , int ); // EO GENERATED ARGS BBTK_PROCESS ( Process ) ; void Process ( ) ; private: void execute ( std::string lib , int _argc , char * _argv[] ) ; } ; BBTK_BEGIN_DESCRIBE_BLACK_BOX ( MaskImage , bbtk::AtomicBlackBox ) ; BBTK_NAME ( "MaskImage" ) ; BBTK_AUTHOR ( "Nicole Aucoin, BWH Ron Kikinis, BWH" ) ; BBTK_DESCRIPTION ( "Masks two images. The output image is set to 0 everywhere except where the chosen label from the mask volume is present, at which point it will retain it's original values. Although all image types are supported on input, only signed types are produced. The two images do not have to have the same dimensions." ) ; BBTK_CATEGORY ( "Filtering.Arithmetic" ) ; // GENERATED DESCRPTION BBTK_INPUT(MaskImage , InputVolume , "InputVolume" , std::string, ""); BBTK_INPUT(MaskImage , MaskVolume , "MaskVolume" , std::string, ""); BBTK_INPUT(MaskImage , OutputVolume , "OutputVolume" , std::string, ""); BBTK_INPUT(MaskImage , Label , "Label" , int, ""); BBTK_INPUT(MaskImage , Replace , "Replace" , int, ""); // EO GENERATED DESCRIPTION BBTK_END_DESCRIBE_BLACK_BOX ( MaskImage ) ; } #endif // __bbSlicerMaskImage_h_INCLUDED__