#endif
#include "gdcmArgMgr.h" // for Argument Manager functions
+#include "gdcmFile.h"
//----------------------------------------------------------------------------
int main(int argc, char *argv[])
// Initialize Arguments Manager
- gdcm::ArgMgr *am= new gdcm::ArgMgr(argc, argv);
+ GDCM_NAME_SPACE::ArgMgr *am= new GDCM_NAME_SPACE::ArgMgr(argc, argv);
if (argc == 1 || am->ArgMgrDefined("usage") )
{
return 0;
}
- int loadMode = gdcm::LD_ALL;
+ int loadMode = GDCM_NAME_SPACE::LD_ALL;
if ( am->ArgMgrDefined("noshadowseq") )
- loadMode |= gdcm::LD_NOSHADOWSEQ;
+ loadMode |= GDCM_NAME_SPACE::LD_NOSHADOWSEQ;
else
{
if ( am->ArgMgrDefined("noshadow") )
- loadMode |= gdcm::LD_NOSHADOW;
+ loadMode |= GDCM_NAME_SPACE::LD_NOSHADOW;
if ( am->ArgMgrDefined("noseq") )
- loadMode |= gdcm::LD_NOSEQ;
+ loadMode |= GDCM_NAME_SPACE::LD_NOSEQ;
}
int filecontent = am->ArgMgrGetInt("filecontent", 1);
char *filein = am->ArgMgrWantString("filein",usage);
- char *fileout = am->ArgMgrWantString("fileout",usage);
+ char *fileout = (char *)(am->ArgMgrGetString("fileout","fileout"));
if (am->ArgMgrDefined("debug"))
- gdcm::Debug::DebugOn();
+ GDCM_NAME_SPACE::Debug::DebugOn();
- bool deuxD = am->ArgMgrDefined("2D");
+ int deuxD = am->ArgMgrDefined("2D");
/* if unused Param we give up */
if ( am->ArgMgrPrintUnusedLabels() )
return 0;
}
-// ------------------------------------------------------------
+// ------------------------------------------------------------
+ std::vector<GDCM_NAME_SPACE::File* > cfl;
+
+ GDCM_NAME_SPACE::File *f = GDCM_NAME_SPACE::File::New();
+ f->SetFileName(filein);
+ f->Load();
+ cfl.push_back(f);
vtkGdcmReader *reader = vtkGdcmReader::New();
reader->AllowLookupTableOff();
- reader->SetFileName( argv[1] );
+ //reader->SetFileName( filein );
+ // in order not to parse twice the input file.
+ reader->SetCoherentFileList(&cfl);
reader->Update();
vtkImageData *output;
case 2:
writer->SetContentTypeToFilteredImage();
+ writer->SetGdcmFile( f );
fileName = fileName + "_FilteredImage.dcm";
break;
case 3:
writer->SetContentTypeToUserCreatedImage();
- fileName = fileName + "_FilteredImage.dcm";
+ writer->SetGdcmFile( f );
+ fileName = fileName + "_UserCreatedImage.dcm";
break;
case 4:
writer->SetContentTypeToUserCreatedImage();
+ writer->SetGdcmFile( f );
fileName = fileName + "_UnmodifiedPixelsImage.dcm";
break;
}
- fileName += ".dcm";
+/// \todo : fix stupid generated image names (later : JPRx)
- // For 3D
- writer->SetFileDimensionality(3);
- writer->SetFileName(fileName.c_str());
if(deuxD)
{
writer->SetFileDimensionality(2);
writer->SetFilePrefix(fileout);
writer->SetFilePattern("%s%d.dcm");
}
+ else
+ {
+ fileName += ".dcm";
+ // For 3D
+ writer->SetFileDimensionality(3);
+ writer->SetFileName(fileName.c_str());
+ }
writer->SetInput(output);
writer->Write();