#ifndef __bbSlicerCheckerBoardFilter_h_INCLUDED__ #define __bbSlicerCheckerBoardFilter_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 CheckerBoardFilter : public bbtk::AtomicBlackBox { BBTK_BLACK_BOX_INTERFACE ( CheckerBoardFilter , bbtk::AtomicBlackBox ) ; // GENERATED ARGS BBTK_DECLARE_INPUT ( checkerPattern , std::vector ); BBTK_DECLARE_INPUT ( inputVolume1 , std::string ); BBTK_DECLARE_INPUT ( inputVolume2 , std::string ); BBTK_DECLARE_INPUT ( outputVolume , std::string ); // EO GENERATED ARGS BBTK_PROCESS ( Process ) ; void Process ( ) ; private: void execute ( std::string lib , int _argc , char * _argv[] ) ; } ; BBTK_BEGIN_DESCRIBE_BLACK_BOX ( CheckerBoardFilter , bbtk::AtomicBlackBox ) ; BBTK_NAME ( "CheckerBoardFilter" ) ; BBTK_AUTHOR ( "Bill Lorensen" ) ; BBTK_DESCRIPTION ( "Create a checkerboard volume of two volumes. The output volume will show the two inputs alternating according to the user supplied checkerPattern. This filter is often used to compare the results of image registration. Note that the second input is resampled to the same origin, spacing and direction before it is composed with the first input. The scalar type of the output volume will be the same as the input image scalar type." ) ; BBTK_CATEGORY ( "Filtering" ) ; // GENERATED DESCRPTION BBTK_INPUT(CheckerBoardFilter , checkerPattern , "checkerPattern" , std::vector, ""); BBTK_INPUT(CheckerBoardFilter , inputVolume1 , "inputVolume1" , std::string, ""); BBTK_INPUT(CheckerBoardFilter , inputVolume2 , "inputVolume2" , std::string, ""); BBTK_INPUT(CheckerBoardFilter , outputVolume , "outputVolume" , std::string, ""); // EO GENERATED DESCRIPTION BBTK_END_DESCRIBE_BLACK_BOX ( CheckerBoardFilter ) ; } #endif // __bbSlicerCheckerBoardFilter_h_INCLUDED__