]> Creatis software - creaCLI.git/blob - bbtk_Slicer_PKG/src/bbSlicerCreateaDICOMSeries.cxx
The following boxxes compilated with no errors
[creaCLI.git] / bbtk_Slicer_PKG / src / bbSlicerCreateaDICOMSeries.cxx
1 #include "bbSlicerCreateaDICOMSeries.h"
2 #include "bbSlicerPackage.h"
3
4 namespace bbSlicer {
5     BBTK_ADD_BLACK_BOX_TO_PACKAGE ( Slicer, CreateaDICOMSeries )
6     BBTK_BLACK_BOX_IMPLEMENTATION ( CreateaDICOMSeries, bbtk::AtomicBlackBox );
7
8     void CreateaDICOMSeries::Process ( ) {
9
10         // GENERATED
11
12 int _argc =20;
13 std::string lib = "/home/riveros/.slicer/Slicer4-bin/Slicer-build/lib/Slicer-4.0/cli-modules/libImageReadDicomWriteLib.so";
14 char * _argv[ ] = { Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--patientName"  ) + Mthd::Aux::toString( bbGetInputpatientName( ) ) ),
15 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--patientID"  ) + Mthd::Aux::toString( bbGetInputpatientID( ) ) ),
16 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--patientComments"  ) + Mthd::Aux::toString( bbGetInputpatientComments( ) ) ),
17 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--studyID"  ) + Mthd::Aux::toString( bbGetInputstudyID( ) ) ),
18 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--studyDate"  ) + Mthd::Aux::toString( bbGetInputstudyDate( ) ) ),
19 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--studyComments"  ) + Mthd::Aux::toString( bbGetInputstudyComments( ) ) ),
20 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--studyDescription"  ) + Mthd::Aux::toString( bbGetInputstudyDescription( ) ) ),
21 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--modality"  ) + Mthd::Aux::toString( bbGetInputmodality( ) ) ),
22 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--manufacturer"  ) + Mthd::Aux::toString( bbGetInputmanufacturer( ) ) ),
23 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--model"  ) + Mthd::Aux::toString( bbGetInputmodel( ) ) ),
24 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--seriesNumber"  ) + Mthd::Aux::toString( bbGetInputseriesNumber( ) ) ),
25 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--seriesDescription"  ) + Mthd::Aux::toString( bbGetInputseriesDescription( ) ) ),
26 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--rescaleIntercept"  ) + Mthd::Aux::toString( bbGetInputrescaleIntercept( ) ) ),
27 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--rescaleSlope"  ) + Mthd::Aux::toString( bbGetInputrescaleSlope( ) ) ),
28 Mthd::Aux::toCharArrray( Mthd::Aux::toString( bbGetInputinputVolume( ) ) ),
29 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--dicomDirectory"  ) + Mthd::Aux::toString( bbGetInputdicomDirectory( ) ) ),
30 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--dicomPrefix"  ) + Mthd::Aux::toString( bbGetInputdicomPrefix( ) ) ),
31 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--dicomNumberFormat"  ) + Mthd::Aux::toString( bbGetInputdicomNumberFormat( ) ) ),
32 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--reverseImages"  ) + Mthd::Aux::toString( bbGetInputreverseImages( ) ) ),
33 Mthd::Aux::toCharArrray( Mthd::Aux::toString( "--useCompression"  ) + Mthd::Aux::toString( bbGetInputuseCompression( ) ) ) };
34
35         // EO GENERATED
36         this->execute( lib, _argc, _argv );
37
38     }
39
40     void CreateaDICOMSeries::execute ( std::string lib, int _argc, char * _argv[] ) {
41         void* handle = dlopen( lib.c_str( ), RTLD_NOW | RTLD_GLOBAL );
42         if ( ! handle ) {
43             std::cerr << "CAN'T OPEN LIBRARY: " << dlerror( ) << '\n';
44             return;
45         }
46         typedef int (*method_t )( int argc, char * argv[] );
47         // RESET ERROR
48         dlerror( );
49         // PROTOTYPE
50         method_t myMethod = ( method_t ) dlsym( handle, "ModuleEntryPoint" );
51         const char *dlsym_error = dlerror( );
52         if ( dlsym_error ) {
53             std::cerr << "CAN'T LOAD SYMBOL 'ModuleEntryPoint':" << dlsym_error << '\n';
54             dlclose( handle );
55             return;
56         }
57         // METHOD CALL
58         myMethod( _argc, _argv );
59         // CLOSING LIB
60         dlclose( handle );
61     }
62
63     void CreateaDICOMSeries::bbUserSetDefaultValues ( ) {
64     }
65
66     void CreateaDICOMSeries::bbUserInitializeProcessing ( ) {
67     }
68
69     void CreateaDICOMSeries::bbUserFinalizeProcessing ( ) {
70     }
71 }
72 // EO namespace bbSlicer
73
74