[cig-commits] r7373 - in cs/spatialdata-0.1/trunk: libsrc/spatialdb tests/libtests/spatialdb/data

brad at geodynamics.org brad at geodynamics.org
Fri Jun 22 06:56:09 PDT 2007


Author: brad
Date: 2007-06-22 06:56:09 -0700 (Fri, 22 Jun 2007)
New Revision: 7373

Modified:
   cs/spatialdata-0.1/trunk/libsrc/spatialdb/SimpleIOAscii.cc
   cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/data/spatial_comments.dat
Log:
Added ability to put comments before/after magic header.

Modified: cs/spatialdata-0.1/trunk/libsrc/spatialdb/SimpleIOAscii.cc
===================================================================
--- cs/spatialdata-0.1/trunk/libsrc/spatialdb/SimpleIOAscii.cc	2007-06-22 13:27:51 UTC (rev 7372)
+++ cs/spatialdata-0.1/trunk/libsrc/spatialdb/SimpleIOAscii.cc	2007-06-22 13:56:09 UTC (rev 7373)
@@ -53,12 +53,20 @@
       throw std::runtime_error(msg.str());
     } // if
 
+    utils::LineParser parser(filein, "//");
+    parser.eatwhitespace(true);
+
+    std::istringstream buffer;
+
+    buffer.str(parser.next());
+    buffer.clear();
+
     const int headerLen = strlen(HEADER);
-    std::string buffer;
-    buffer.resize(headerLen+1);
-    filein.read((char*) buffer.c_str(), sizeof(char)*headerLen);
-    buffer[headerLen] = '\0';
-    if (0 != strcasecmp(HEADER, buffer.c_str())) {
+    std::string hbuffer;
+    hbuffer.resize(headerLen+1);
+    buffer.read((char*) hbuffer.c_str(), sizeof(char)*headerLen);
+    hbuffer[headerLen] = '\0';
+    if (0 != strcasecmp(HEADER, hbuffer.c_str())) {
       std::ostringstream msg;
       msg
 	<< "Magic header '" << buffer << "' does not match expected header '"
@@ -66,7 +74,7 @@
       throw std::runtime_error(msg.str());
     } // if
     int version = 0;
-    filein >> version;
+    buffer >> version;
     switch (version)
       { // switch
       case 1 :

Modified: cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/data/spatial_comments.dat
===================================================================
--- cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/data/spatial_comments.dat	2007-06-22 13:27:51 UTC (rev 7372)
+++ cs/spatialdata-0.1/trunk/tests/libtests/spatialdb/data/spatial_comments.dat	2007-06-22 13:56:09 UTC (rev 7373)
@@ -1,4 +1,6 @@
-#SPATIAL.ascii 1
+// comments at top
+   // a little whitespace
+#SPATIAL.ascii 1 // comments at end
 // Comment after header
 SimpleDB {
   num-values = 2 // comment for value



More information about the cig-commits mailing list