]> Creatis software - creaCLI.git/blob - bbtk_Slicer_PKG/src/bbSlicerFastRigidregistration.cxx
All Slicer modules succesfully compiled into BBTK boxes :P
[creaCLI.git] / bbtk_Slicer_PKG / src / bbSlicerFastRigidregistration.cxx
1 #include "bbSlicerFastRigidregistration.h"
2 #include "bbSlicerPackage.h"
3
4 namespace bbSlicer {
5     BBTK_ADD_BLACK_BOX_TO_PACKAGE ( Slicer, FastRigidregistration )
6     BBTK_BLACK_BOX_IMPLEMENTATION ( FastRigidregistration, bbtk::AtomicBlackBox );
7
8     void FastRigidregistration::Process ( ) {
9
10         // GENERATED
11
12 int _argc =13;
13 std::string lib = "/home/riveros/.slicer/Slicer4-bin/Slicer-build/lib/Slicer-4.0/cli-modules/libRigidRegistrationLib.so";
14 char * _argv[ ] = { Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--fixedsmoothingfactor"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputFixedImageSmoothingFactor( ) ) ) ,"@@@@@"," --fixedsmoothingfactor ") ),
15 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--movingsmoothingfactor"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputMovingImageSmoothingFactor( ) ) ) ,"@@@@@"," --movingsmoothingfactor ") ),
16 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--testingmode"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputTestingMode( ) ) ) ,"@@@@@"," --testingmode ") ),
17 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-b"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputHistogramBins( ) ) ) ,"@@@@@"," -b ") ),
18 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-s"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputSpatialSamples( ) ) ) ,"@@@@@"," -s ") ),
19 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-i"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputIterations( ) ) ) ,"@@@@@"," -i ") ),
20 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-l"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputLearningRate( ) ) ) ,"@@@@@"," -l ") ),
21 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "-t"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputTranslationScale( ) ) ) ,"@@@@@"," -t ") ),
22 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--initialtransform"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputInitialTransform( ) ) ) ,"@@@@@"," --initialtransform ") ),
23 Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputFixedImageFileName( ) ) ) ,"@@@@@","") ),
24 Mthd::Aux::toCharArrray( Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputMovingImageFileName( ) ) ) ,"@@@@@","") ),
25 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--outputtransform"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputOutputTransform( ) ) ) ,"@@@@@"," --outputtransform ") ),
26 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--resampledmovingfilename"  ) + Mthd::Aux::replace_str ( ( Mthd::Aux::toString( bbGetInputResampledImageFileName( ) ) ) ,"@@@@@"," --resampledmovingfilename ") ) };
27
28         // EO GENERATED
29         this->execute( lib, _argc, _argv );
30
31     }
32
33     void FastRigidregistration::execute ( std::string lib, int _argc, char * _argv[] ) {
34         void* handle = dlopen( lib.c_str( ), RTLD_NOW | RTLD_GLOBAL );
35         if ( ! handle ) {
36             std::cerr << "CAN'T OPEN LIBRARY: " << dlerror( ) << '\n';
37             return;
38         }
39         typedef int (*method_t )( int argc, char * argv[] );
40         // RESET ERROR
41         dlerror( );
42         // PROTOTYPE
43         method_t myMethod = ( method_t ) dlsym( handle, "ModuleEntryPoint" );
44         const char *dlsym_error = dlerror( );
45         if ( dlsym_error ) {
46             std::cerr << "CAN'T LOAD SYMBOL 'ModuleEntryPoint':" << dlsym_error << '\n';
47             dlclose( handle );
48             return;
49         }
50         // METHOD CALL
51         myMethod( _argc, _argv );
52         // CLOSING LIB
53         dlclose( handle );
54     }
55
56     void FastRigidregistration::bbUserSetDefaultValues ( ) {
57     }
58
59     void FastRigidregistration::bbUserInitializeProcessing ( ) {
60     }
61
62     void FastRigidregistration::bbUserFinalizeProcessing ( ) {
63     }
64 }
65 // EO namespace bbSlicer
66
67