]> Creatis software - gdcm.git/blobdiff - Testing/TestHash.cxx
* Test/TestWriteRead.cxx and TestReadWrite.cxx merged (because of
[gdcm.git] / Testing / TestHash.cxx
index ffd89540adda8a19dc09f590dee274b18239a841..771b7bba472031e7f9a304d8c0b019e3f7ddb0c9 100644 (file)
@@ -1,3 +1,4 @@
+// Checks the basic functionalities of STL <map>.
 #include <map>
 #include <string>
 #include <iostream>
@@ -5,34 +6,46 @@
 
 int TestHash( int, char * [] ) {
 
-  typedef std::map<std::string, char*> dict;
-  
+   std::cout << "Test::TestHash : " << std::endl;
+   std::cout << "   Checks that the basic STL <map> functionalities required "
+             << std::endl
+             << "   by gdcm are operational. " << std::endl;
+
+   typedef std::map<std::string, char*> dict;
    dict tb1;
+
+   // Adding entries by key:
+
    dict::iterator im = tb1.find("00380010");
    tb1["00100010"] = "Patient Name";
    tb1["7fe00010"] = "Pixel Data";
    tb1["50000010"] = "Number of points";
    tb1["00380010"] = "Admission ID";
 
-   std::cout << "Traversal of dictionary (note the proper ordering on key)." << std::endl;
+   // Travesing the dictionary:
+
+   std::cout << "   Traversal of dictionary (note the proper ordering on key):"
+             << std::endl;
    for ( im = tb1.begin(); im != tb1.end(); ++im )
-      std::cout << "   \"" << im->first << "\" = " << im->second << std::endl;
-   std::cout << "End of dictionary." << std::endl;
+      std::cout << "       \"" << im->first << "\" = " << im->second
+                << std::endl;
+   std::cout << "   End of dictionary." << std::endl;
+
+   // Find request.
 
-   std::cout << "Find request on key 00380010" << std::endl;
+   std::cout << "   Find request on key 00380010" << std::endl;
    im = tb1.find("00380010");
-   std::cout << "   \"" << im->first << "\" = " << im->second << std::endl;
+   std::cout << "       \"" << im->first << "\" = " << im->second << std::endl;
 
+   // The following should print in hexadecimal an in decimal the given
+   // integer as stated by:
+   //   http://www.developer.com/net/cplus/article.php/10919_2119781_3
+   // Alas it doesn't work with g++ (at least)...
    int i = 0x0010;
    std::cout.setf(std::ios::hex);
-   std::cout << i << std::endl;
+   std::cout << "Test::TestHash : hexdecimal output : " << i << std::endl;
    std::cout.setf(std::ios::dec);
-   std::cout << i << std::endl;        
-
-// Voir :
-//http://www.developer.com/net/cplus/article.php/10919_2119781_3
-//
-// dommage que ca ne marche pas ...
+   std::cout << "Test::TestHash : decimal output : "    << i << std::endl;
 
-  return 0;
+   return 0;
 }