[Dcmlib] gdcmDebug

Eric Boix Eric.Boix at creatis.insa-lyon.fr
Thu Jun 24 12:38:44 CEST 2004


	Salut,

Tiens un email auquel je n'ai pas repondu:

Mathieu> Si j'ai bien compris le gdcmDebug, on peut s'en servir comme
Mathieu> cout/printf, il suffit de rajouter un gdcmDebug(-1) au debut de la
Mathieu> fonction main. Donc si pars inadvertance on commit tout, il n'y qu'une
Mathieu> ligne a commenter en debut de test/exemple.
Oui, gdcmDebug centralise les references a std::cout. Par defaut rien
n'est imprime', et il faut ajouter dbg.Debug(2); dans ton main (code)
pour que les choses s'affichent. L'entier est le niveau de debug et
correspond au premier argument de dbg::Verbose().

A vrai dire je prefererait cacher la variable globale (beuark) dbg 
(cf gdcmDebug.h) a l'utilisateur, en mettant une methode SetDebug
au classes apparaissant dans l'API. A faire.

Un autre commentaire de Benoit: dbg::Verbose() est tres limite'
dans ses arguments. Benoit suggere de definir une macro a la VTK
(ou a la itk) ou on peut ecrire des choses du genre;
   gdcmDEBUGMACRO( 1, "gdcmHeader::Method", ' << Group << Element ')
Cela nous eviterait les long ostringstream avant une invocation a
gdcmVerbose.
Ceci dit, les occurences des ostringstream sont tres, tres souvent
lie's au contournement de l'utilisation d'un debuggeur, plutot que
pour servir de mode verbose. J'ai peur que si l'on facilite les
choses avec un gdcmDEBUGMACRO, alors le code ne soit emaille' de
cochoneries non necessaires.
Hummmm.....

	Frog.



More information about the Dcmlib mailing list