${GDCM_BINARY_DIR}/src)
SET(EXAMPLE_SOURCES
#names starting with 'ex' are examples
- #-------------------------------------
+ #-------------------------------------
+ #SingleFrames2Multiframe
#Txt2Mat
#exDicomRTStructSetFile
#exExtractCSA
- exPresentationState
-
+ #exExtractCSATag
+ #exPresentationState
+ #exExplorePresentationState
exReadPapyrus
exReadWriteFile
exColorToRGB
#ReWriteExtended
RawToDicom
TestValidate
-
+ Rename
SplitIntoDirectories
SplitIntoXCoherentDirectories
SplitIntoXCoherentDirectoriesIgnoreSerieUID
Program: gdcm
Module: $RCSfile: MergeDICOMRaw.cxx,v $
Language: C++
- Date: $Date: 2007/12/03 17:16:25 $
- Version: $Revision: 1.2 $
+ Date: $Date: 2010/09/01 14:41:48 $
+ Version: $Revision: 1.3 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
f->InsertEntryString(str.str(),0x0028,0x0002,"US"); // Samples per Pixel
-
-
-
GDCM_NAME_SPACE::FileHelper *fh = GDCM_NAME_SPACE::FileHelper::New(f);
// Convert Media Storage SOP Class if needed
std::string mssop = f->GetEntryString(0x0002,0x0002);
<< "No file written\n";
}
-
fh->Delete();
f->Delete();
return 0;
Program: gdcm
Module: $RCSfile: PcpdenseToDicom.cxx,v $
Language: C++
- Date: $Date: 2010/08/26 12:46:12 $
- Version: $Revision: 1.5 $
+ Date: $Date: 2010/09/01 14:41:48 $
+ Version: $Revision: 1.6 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
int main(int argc, char *argv[])
{
START_USAGE(usage)
- " \n pcpdenseToDicom :\n ",
+ " \n pcpdenseToDicom :\n ",
" Converts the '.txt' files into 16 bits Dicom Files, ",
" usage: ",
- " pcpdenseToDicom rootfilename=... ",
+ " pcpdenseToDicom rootfilename=... ",
" (e.g.. : meas_MID380_DENSE_stacked_slices_aif_FID81637)",
" numberOfSlices = (default : 3) ",
" X2 : multiply x 2 image size ",
Program: gdcm
Module: $RCSfile: PrintFile.cxx,v $
Language: C++
- Date: $Date: 2009/05/28 15:44:34 $
- Version: $Revision: 1.93 $
+ Date: $Date: 2010/09/01 14:41:48 $
+ Version: $Revision: 1.94 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
GDCM_NAME_SPACE::File *f = GDCM_NAME_SPACE::File::New();
f->SetLoadMode(loadMode);
f->SetFileName( fileName );
- f->SetMaxSizeLoadEntry(0xffff);
+ f->SetMaxSizeLoadEntry(0xffff);
for (int ri=0; ri<forceLoadNb; ri++)
{
f->AddForceLoadElement((uint32_t)elemsToForceLoad[2*ri],
(uint32_t)elemsToForceLoad[2*ri+1] );
}
+
// TODO : find why such a polution
// To avoid polluting the output with messages
// 'Last system error was : No such file or directory'
//------------------------------
-
-
-
-
// Let's get and print some usefull fields about 'Orientation'
// ------------------------------------------------------------
{
if (load) // just to see warning messages at load time !
{
- uint8_t *pixels = fh->GetImageData(); (void)pixels;
+ uint8_t *pixels = fh->GetImageData(); (void)pixels;
uint32_t lgth = fh->GetImageDataSize(); (void)lgth;
}
Program: gdcm
Module: $RCSfile: exPresentationState.cxx,v $
Language: C++
- Date: $Date: 2009/09/16 12:28:44 $
- Version: $Revision: 1.4 $
+ Date: $Date: 2010/09/01 14:41:48 $
+ Version: $Revision: 1.5 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#include "gdcmSeqEntry.h"
#include "gdcmSQItem.h"
#include "gdcmDocEntrySet.h"
-#include "gdcmSerieHelper.h"
+//#include "gdcmSerieHelper.h"
#include "gdcmDirList.h"
#include "gdcmUtil.h"
GDCM_NAME_SPACE::SeqEntry *CheckIfSequenceExists(GDCM_NAME_SPACE::File *fPS, uint16_t gr, uint16_t el);
GDCM_NAME_SPACE::SeqEntry *CheckIfSequenceExists(GDCM_NAME_SPACE::SQItem *si, uint16_t gr, uint16_t el);
+ bool dealWithCurrentFile(const char *PSName);
bool dealWithTopLevelItem(GDCM_NAME_SPACE::SQItem* currentItem);
bool dealWithEndLevelItem(GDCM_NAME_SPACE::SQItem* currentItem);
void displaySeekResult(GDCM_NAME_SPACE::SeqEntry* currentItem, uint16_t g, uint16_t e);
delete am; // ------ we don't need Arguments Manager any longer ------
// ============================================================
-// Read the input image.
+// Read the input file.
// ============================================================
GDCM_NAME_SPACE::File *f = GDCM_NAME_SPACE::File::New( );
-/*
- //f->SetLoadMode(GDCM_NAME_SPACE::LD_NOSEQ | GDCM_NAME_SPACE::LD_NOSHADOW);
- f->SetFileName( fileName );
- f->SetMaxSizeLoadEntry(0xffff);
- bool res = f->Load();
+// =================================================================================
- if( GDCM_NAME_SPACE::Debug::GetDebugFlag())
- {
- std::cout << "---------------------------------------------" << std::endl;
- f->Print();
- std::cout << "---------------------------------------------" << std::endl;
- }
- if (!res) {
- std::cerr << "Sorry, " << fileName << " not a gdcm-readable "
- << "DICOM / ACR File"
- << std::endl;
- f->Delete();
- return 1;
- }
- std::cout << " ... is readable " << std::endl;
-*/
+ bool resFile = dealWithCurrentFile(PSName);
+ std::cout << "\n\n" <<std::endl;
+ std::cout << "=====================================================[" << PSName << "]==" << resFile << std::endl;
+ return resFile;
+}
-// =================================================================================
+//----------------------------------------------------------------------------------------------------
+bool dealWithCurrentFile(const char *PSName)
+{
GDCM_NAME_SPACE::File *fPS = GDCM_NAME_SPACE::File::New( );
fPS->SetFileName( PSName );
std::cout << "Sorry, " << PSName << " not a gdcm-readable "
<< "DICOM / ACR File"
<< std::endl;
- f->Delete();
- return 1;
+ fPS->Delete();
+ return false;
}
GDCM_NAME_SPACE::SeqEntry *se;
if (!se)
{
std::cout << "[" << PSName << "] : Hopeless (" << std::hex << 0x0070 << "|" << 0x0001 << std::dec << " doesn't exist...)" <<std::endl;
- exit (0);
+ return false;
}
std::cout << "\n\n =========================================================================================" <<std::endl;
std::cout << "[" << PSName << "] is a gdcm-readable PresentationState file, "
std::cout << "Sorry, [" << PSName << "] is not a gdcm-readable PresentationState file" <<std::endl;
}
*/
-
-
- f->Delete();
+
fPS->Delete();
- std::cout << "\n\n" <<std::endl;
-return 0;
+ std::cout << "\n\n" <<std::endl;
+ return true;
}
//----------------------------------------------------------------------------------------------------
Program: gdcm
Module: $RCSfile: exReadWriteFile.cxx,v $
Language: C++
- Date: $Date: 2007/05/23 14:18:05 $
- Version: $Revision: 1.10 $
+ Date: $Date: 2010/09/01 14:41:48 $
+ Version: $Revision: 1.11 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
int main(int argc, char *argv[])
{
-
-
std::cout << " --- WARNING --- WARNING --- WARNING --- WARNING ---" <<std::endl;
std::cout << " " <<std::endl;
std::cout << " This source program is NOT intendend to be run as is"<<std::endl;
std::cout << "User MUST read it, " <<std::endl;
std::cout << " comment out the useless parts " <<std::endl;
std::cout << " invoke it with an ad hoc image(*) " <<std::endl;
-std::cout << " check the resulting image " <<std::endl;
+std::cout << " check the resulting image " <<std::endl;
std::cout << " " <<std::endl;
std::cout << " (*) For samples, user can refer to gdcmData" <<std::endl;
std::cout << " and read README.txt file " <<std::endl;
// Get the image data size
size_t dataRawSize = fh1->GetImageDataRawSize();
- // TODO : Newbee user would appreciate any comment !
+ /// \TODO : Newbee user would appreciate any comment !
std::cout << "GetImageDataSize()"
<< fh1->GetImageDataSize() << std::endl;
Program: gdcm
Module: $RCSfile: exSerieHelper.cxx,v $
Language: C++
- Date: $Date: 2009/05/28 15:44:34 $
- Version: $Revision: 1.18 $
+ Date: $Date: 2010/09/01 14:41:48 $
+ Version: $Revision: 1.19 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
{
START_USAGE(usage)
"\n exSerieHelper :\n ",
- "Example on how to use the methodes of gdcm::SerieHelper ",
+ "Example on how to use the methods of gdcm::SerieHelper ",
"usage: exSerieHelper {dirin=inputDirectoryName} ",
" [ { [noshadowseq] | [noshadow][noseq] } ] [debug] ",
" ",
if (am->ArgMgrDefined("debug"))
GDCM_NAME_SPACE::Debug::DebugOn();
-
+
if (am->ArgMgrDefined("warning"))
GDCM_NAME_SPACE::Debug::WarningOn();
return 0;
}
-
std::cout << "Dir Name :[" << dirName << "]" << std::endl;
//
// Sometimes using only SerieHelper is not enought !
while (l)
{
nbFiles = l->size() ;
- if ( nbFiles > 5 ) // Why not ? Just an example, for testing
+ if ( nbFiles > 2 ) // Why not ? Just an example, for testing
{
std::cout << "List to sort : " << nbFiles << " long" << std::endl;
//---------------------------------------------------------