]> Creatis software - gdcm.git/blobdiff - src/gdcmVRKey.h
#include <cstdio> // for Ubuntu ?
[gdcm.git] / src / gdcmVRKey.h
index 069cbe353cb74541362c6140e7110aed1b1403e0..65a651acc72e934f6c739a3e235e7e2fae1fa368 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmVRKey.h,v $
   Language:  C++
-  Date:      $Date: 2006/05/15 14:47:13 $
-  Version:   $Revision: 1.6 $
+  Date:      $Date: 2010/09/01 15:14:39 $
+  Version:   $Revision: 1.12 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
                                                                                 
 =========================================================================*/
 
-#ifndef GDCMVRKEY_H
-#define GDCMVRKEY_H
+#ifndef _GDCMVRKEY_H_
+#define _GDCMVRKEY_H_
 
 #include "gdcmCommon.h"
 
 #include <assert.h>
 #include <iomanip> // important
+#include <iostream> // important
 #include <string>
+#include <stdio.h> // for sprintf
+#include <cstdio> // for Ubuntu ?
 
-namespace gdcm 
+namespace GDCM_NAME_SPACE 
 {
 //-----------------------------------------------------------------------------
 class VRKey
@@ -107,6 +110,23 @@ public :
       return key[0] < _val[0] || (key[0] == _val[0] && key[1] < _val[1]);
    }
 
+   inline std::string GetHexaRepresentation()
+   {
+     // We could probabelly write something much more complicated using C++ features !
+     // (I really want HexaRepresentation as xx|xx, not ffffffxx|ffffffxx !)
+      char vr_char[6];
+      char buf[5];
+      sprintf(buf, "%04x",( unsigned short int)key[0]);
+      vr_char[0] = buf[2];
+      vr_char[1] = buf[3];      
+      sprintf(buf, "%04x",( unsigned short int)key[1]);
+      vr_char[2] = '|';
+      vr_char[3] = buf[2];            
+      vr_char[4] = buf[3];
+      vr_char[5] = '\0';
+      return(vr_char);
+   }
+   
 private :
    char key[2];
 };