X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Example%2FPrintDocument.cxx;h=81da2f317cec05937ada1756b62bdd9ca823b80b;hb=c96462a84ea0acd25237f0836fe81cb55f6a5de8;hp=940b816621e3da2990514845d6e8cb0e6f4b009e;hpb=864a539efcd809529bf7f1d6aad6727fd40ace66;p=gdcm.git diff --git a/Example/PrintDocument.cxx b/Example/PrintDocument.cxx index 940b8166..81da2f31 100644 --- a/Example/PrintDocument.cxx +++ b/Example/PrintDocument.cxx @@ -1,31 +1,40 @@ +/*========================================================================= + + Program: gdcm + Module: $RCSfile: PrintDocument.cxx,v $ + Language: C++ + Date: $Date: 2005/07/06 15:49:31 $ + Version: $Revision: 1.16 $ + + Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de + l'Image). All rights reserved. See Doc/License.txt or + http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ +#include "gdcmFile.h" +#include "gdcmDebug.h" + #include +#include //for atoi -#include "gdcmException.h" -#include "gdcmCommon.h" - -#include "gdcmDictEntry.h" -#include "gdcmDict.h" -#include "gdcmDictSet.h" -#include "gdcmHeader.h" -#include "gdcmUtil.h" -#include "gdcmBinEntry.h" -#include "gdcmDocEntry.h" -#include "gdcmDocEntrySet.h" -#include "gdcmDocument.h" -#include "gdcmElementSet.h" -#include "gdcmSeqEntry.h" -#include "gdcmSQItem.h" -#include "gdcmValEntry.h" - -int main(int argc, char* argv[]) +int main(int argc, char *argv[]) { - gdcmHeader *e1; + gdcm::File *e1= new gdcm::File();; std::string fileName; - if (argc != 2) { - std::cout << " Usage : " << argv[0] - << " filename." << std::endl; + if (argc == 1) { + std::cout << " Usage : " + << argv[0] + << " filename" + << " printLevel debug " + << "short (=NOSEQ + NOSHADOW)" + << std::endl; + return 0; } if (argc > 1) { @@ -34,20 +43,44 @@ int main(int argc, char* argv[]) fileName += GDCM_DATA_ROOT; fileName += "/test.acr"; } - - e1= new gdcmHeader - (fileName.c_str(),false, true); - e1->SetPrintLevel(2); - + if (argc > 2) + { + int level = atoi(argv[2]); + e1->SetPrintLevel(level); + } + + if (argc > 3) + gdcm::Debug::DebugOn(); + + if (argc > 4) + e1->SetLoadMode(NO_SEQ | NO_SHADOW); + e1->Load( fileName.c_str() ); + +// we use PrintDocument, because we want to print what we get + +// if ( !e1->IsReadable() ) +// { +// delete e1; +// return 0; +// } + e1->Print(); - std::cout << "\n\n" << std::endl; + std::cout << "\n\n" << std::endl; + + if ( e1->GetEntryValue(0x0002,0x0010) == gdcm::GDCM_NOTLOADED ) + { + std::cout << "Transfer Syntax not loaded. " << std::endl + << "Better you increase MAX_SIZE_LOAD_ELEMENT_VALUE" + << std::endl; + return 0; + } if(e1->IsReadable()) - std::cout <