1 #include "bbSlicerRobustMultiresolutionAffineRegistration.h"
2 #include "bbSlicerPackage.h"
5 BBTK_ADD_BLACK_BOX_TO_PACKAGE ( Slicer, RobustMultiresolutionAffineRegistration )
6 BBTK_BLACK_BOX_IMPLEMENTATION ( RobustMultiresolutionAffineRegistration, bbtk::AtomicBlackBox );
8 void RobustMultiresolutionAffineRegistration::Process ( ) {
13 std::string lib = "/home/riveros/.slicer/Slicer4-bin/Slicer-build/lib/Slicer-4.0/cli-modules/libRegisterImagesMultiResModule.so";
14 char * _argv[ ] = { Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputfixedImage( ) ) ) ,"@@@@@","") ),
15 Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputmovingImage( ) ) ) ,"@@@@@","") ),
16 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--resampledImage" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputresampledImage( ) ) ) ,"@@@@@"," --resampledImage ") ),
17 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--saveTransform" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputoutputTransform( ) ) ) ,"@@@@@"," --saveTransform ") ),
18 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--fixedImageMask" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputfixedImageMask( ) ) ) ,"@@@@@"," --fixedImageMask ") ),
19 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--fixedImageROI" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputfixedImageROI( ) ) ) ,"@@@@@"," --fixedImageROI ") ),
20 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--numIterations" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputnumIterations( ) ) ) ,"@@@@@"," --numIterations ") ),
21 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--numLineIterations" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputnumLineIterations( ) ) ) ,"@@@@@"," --numLineIterations ") ),
22 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--stepSize" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputstepSize( ) ) ) ,"@@@@@"," --stepSize ") ),
23 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--stepTolerance" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputstepTolerance( ) ) ) ,"@@@@@"," --stepTolerance ") ),
24 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--metricTolerance" ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputmetricTolerance( ) ) ) ,"@@@@@"," --metricTolerance ") ) };
27 this->execute( lib, _argc, _argv );
31 void RobustMultiresolutionAffineRegistration::execute ( std::string lib, int _argc, char * _argv[] ) {
32 void* handle = dlopen( lib.c_str( ), RTLD_NOW | RTLD_GLOBAL );
34 std::cerr << "CAN'T OPEN LIBRARY: " << dlerror( ) << '\n';
37 typedef int (*method_t )( int argc, char * argv[] );
41 method_t myMethod = ( method_t ) dlsym( handle, "ModuleEntryPoint" );
42 const char *dlsym_error = dlerror( );
44 std::cerr << "CAN'T LOAD SYMBOL 'ModuleEntryPoint':" << dlsym_error << '\n';
49 myMethod( _argc, _argv );
54 void RobustMultiresolutionAffineRegistration::bbUserSetDefaultValues ( ) {
57 void RobustMultiresolutionAffineRegistration::bbUserInitializeProcessing ( ) {
60 void RobustMultiresolutionAffineRegistration::bbUserFinalizeProcessing ( ) {
63 // EO namespace bbSlicer