--- /dev/null
+#include "bbSlicerMaskImage.h"
+#include "bbSlicerPackage.h"
+
+namespace bbSlicer {
+ BBTK_ADD_BLACK_BOX_TO_PACKAGE ( Slicer, MaskImage )
+ BBTK_BLACK_BOX_IMPLEMENTATION ( MaskImage, bbtk::AtomicBlackBox );
+
+ void MaskImage::Process ( ) {
+
+ // GENERATED
+
+int _argc =5;
+std::string lib = "/home/riveros/.slicer/Slicer4-bin/Slicer-build/lib/Slicer-4.0/cli-modules/libMaskLib.so";
+char * _argv[ ] = { Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputInputVolume( ) ) ) ,"@@@@@","") ),
+Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputMaskVolume( ) ) ) ,"@@@@@","") ),
+Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputOutputVolume( ) ) ) ,"@@@@@","") ),
+Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-l" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputLabel( ) ) ) ,"@@@@@"," -l ") ),
+Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-r" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputReplace( ) ) ) ,"@@@@@"," -r ") ) };
+
+ // EO GENERATED
+ this->execute( lib, _argc, _argv );
+
+ }
+
+ void MaskImage::execute ( std::string lib, int _argc, char * _argv[] ) {
+ void* handle = dlopen( lib.c_str( ), RTLD_NOW | RTLD_GLOBAL );
+ if ( ! handle ) {
+ std::cerr << "CAN'T OPEN LIBRARY: " << dlerror( ) << '\n';
+ return;
+ }
+ typedef int (*method_t )( int argc, char * argv[] );
+ // RESET ERROR
+ dlerror( );
+ // PROTOTYPE
+ method_t myMethod = ( method_t ) dlsym( handle, "ModuleEntryPoint" );
+ const char *dlsym_error = dlerror( );
+ if ( dlsym_error ) {
+ std::cerr << "CAN'T LOAD SYMBOL 'ModuleEntryPoint':" << dlsym_error << '\n';
+ dlclose( handle );
+ return;
+ }
+ // METHOD CALL
+ myMethod( _argc, _argv );
+ // CLOSING LIB
+ dlclose( handle );
+ }
+
+ void MaskImage::bbUserSetDefaultValues ( ) {
+ }
+
+ void MaskImage::bbUserInitializeProcessing ( ) {
+ }
+
+ void MaskImage::bbUserFinalizeProcessing ( ) {
+ }
+}
+// EO namespace bbSlicer
+
+