[Dcmlib] Baseline MAC
Jean-Pierre Roux
jpr at creatis.insa-lyon.fr
Fri Feb 18 17:55:57 CET 2005
Mathieu Malaterre wrote:
> $ ./bin/TestWrite ../gdcmData/FUJI-10-MONO1-ACR_NEMA_2.dcm x
>
> result:
>
> http://www.creatis.insa-lyon.fr/~malaterre/gdcm/FUJI-10-MONO1-ACR_NEMA_2.dcm.XDCM
>
Gagne!
L'entete de l'image sur Mac est synchro avec ce qu'on fait ici.
Reste a comprendre pourquoi Exemple/TestWrite qui lit et reecrit une
image fait autre chose ques TestReadWriteCompare qui lit et ecrit ;-)
Dans Testing/TestReadWriteReadCompare.cxx
//////////////// Step 2:
gdcm::FileHelper *filehelper = new gdcm::FileHelper( file );
int dataSize = filehelper->GetImageDataSize();
uint8_t *imageData = filehelper->GetImageData(); //EXTREMELY IMPORTANT
// Sure, it is : It's up to the user to decide if he wants to
// GetImageData or if he wants to GetImageDataRaw
// (even if we do it by setting a flag, he will have to decide)
filehelper->SetWriteModeToRGB();
filehelper->WriteDcmExplVR( output );
dans Example/TestWrite.cxx
e1 = new gdcm::File( fileName.c_str() );
...
f1 = new gdcm::FileHelper(e1);
...
imageData= f1->GetImageData();
...
case 'x' :
// ecriture d'un fichier DICOM Explicit VR
// à partir d'un dcmFile correct.
fileNameToWrite = fileName + ".XDCM";
std::cout << "WriteDCM Explicit VR" << std::endl;
f1->WriteDcmExplVR(fileNameToWrite);
Le boulot (as light as possible) sur les MetaElements est fait par
FileHelper::CheckMetaElements(), appele immediatement au debut de la
methode FileHelper::Write().
Je ne capte pas vraiment comment il peut echaper a ca ...
FileHelper::WriteDcmExplVR ne fait que positionner un flag et appeler
FileHelper::Write()
?!?
JPRx
More information about the Dcmlib
mailing list