[Dcmlib] Emulation big endian

Mathieu Malaterre mathieu.malaterre at kitware.com
Mon Feb 14 16:27:03 CET 2005


Jean-Pierre ROUX wrote:
>> Mathieu Malaterre wrote:
>>
>>> Salut,
>>>
>>>   Je suis en train de me demander si c'est veritablement possible 
>>> d'emuler big endian sur little endian.
>>>
>>>   Dans ma test, on charge l'image en memoire en restant en little 
>>> endian, donc jusque la c'est censer marcher. Mais au moment de 
>>> l'ecriture seulement on ecris tout en big endian. En theorie ca 
>>> devrait bien marcher non ?
>>>
>>>   Dans les choses que ne sont pas censer marcher c'est le group 0002 
>>> qui doit etre toujours en little endian. Pour l'instant ca marche vu 
>>> que sur Mac lors de l'ecriture on swap tout (je n'ai pas reussi a 
>>> trouver dans le source gdcm ou on traitait le cas de 0002 et little 
>>> endian...)
> 
> 
> Le pb de l'ecriture du groupe 0002 (qui doit toujours etre Little 
> Endian, meme lorsque la Transfer Syntax est Big Endian) a été zappé :-(.
> 
> Vu :
> - qu'on sait lire tous les types d'images sur tous les types de processeurs
> - qu'on sait ecrire proprement les images en Little Endian, même sur des 
> processeurs Big Endian,
> - que Little Endian est le format recommande par DICOM, et ce que cette 
> recomandation est maintenant suivie par a peu pres tout le monde
> - que tous les Dicom Readers du commerce savent lire a la fois le Big 
> Endian et le Little Endian
> 
> Je pense que ca ne generait aucun utilisateur si on disait 'gdcm ecrit 
> seulement en Little Endian'

Ok, plusieurs choses:

- Je ne crois absolument pas qu'en restreignant les features de gdcm on 
va eliminer des bugs: faux et archi faux. Il vaut mieux ecrire 
plus/mieux des tests.

- JP tu dis dans ton message que gdcm c'est lire du Big Endian, vraiment 
? Dans ce cas ca serait pas mal de le tester via gdcm, non :) D'ou le 
2eme interet (et c'est mon point). On devrait etre capable de generer 
des images DICOM qui nous servirait d'input au lieu d'attendre que qlq 
nous envoie l'image en disant : "je comprends pas mon image passe pas 
dans gdcm, elle est en Big Endian...". Non seulement on tord le coup 
avant de recevoir l'image en question, mais en plus on evite d'exploser 
la taille de gdcmData.


Derniere argument, sans doute beaucoup moindre c'est effectivement 
-entre autre- le GE Private special full feature.

Limiter les features de gdcm, pour moi c'est un defaut d'architecture de 
gdcm...

Enfin sinon pour trancher la poire en deux, je vois pas pourquoi les dev 
ne pourrait pas generer du Big Endian. Meme si gdcm ne supporte 
officielemtn que l'ecriture de little endian

My 2 cents
Mathieu



More information about the Dcmlib mailing list