X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=SXSIStorageInterface.cpp;h=d770d7e044be60816fa42f915fc7c65ff62cc881;hb=cea756c7adc49891004bfe455628010eb7a28bc9;hp=14c1d703cf7e8f94be3912e98cb3caef68fb236d;hpb=9be0c0e2a5597148fdc3a3cca2bdaf69da0aa27d;p=SXSI%2Fxpathcomp.git diff --git a/SXSIStorageInterface.cpp b/SXSIStorageInterface.cpp index 14c1d70..d770d7e 100644 --- a/SXSIStorageInterface.cpp +++ b/SXSIStorageInterface.cpp @@ -12,10 +12,10 @@ #include "Utils.h" -SXSIStorageInterface::SXSIStorageInterface() +SXSIStorageInterface::SXSIStorageInterface(int sf,bool iet,bool dtc) { tree = new XMLTree(); - tree->OpenDocument(true,1); + tree->OpenDocument(iet,sf,dtc); } SXSIStorageInterface::~SXSIStorageInterface() @@ -24,40 +24,51 @@ SXSIStorageInterface::~SXSIStorageInterface() void SXSIStorageInterface::newChild(string name) { - cerr << "New child " << name << "\n"; + _new_child++; tree->NewOpenTag((unsigned char*) name.c_str()); } void SXSIStorageInterface::newText(string text) { - if (text.empty()){ - cerr << "Calling newEmptyText()\n"; + + if (text.empty()) { + _new_empty_text++; tree->NewEmptyText(); } else { - cerr << "Calling newText(" << text <<")\n"; - tree->NewText((unsigned char*) text.c_str()); - - }; + _new_text++; + _length_text += text.size(); + tree->NewText((unsigned char*) text.c_str()); + } } - void SXSIStorageInterface::nodeFinished(string name) { - cerr << "Node Finished child " << name << "\n"; - tree->NewClosingTag((unsigned char*) name.c_str()); - } + tree->NewClosingTag((unsigned char*) name.c_str()); + +} void SXSIStorageInterface::parsingFinished() { - tree->CloseDocument(); + + tree->CloseDocument(); } void *SXSIStorageInterface::returnDocument(){ - +#ifdef DEBUG + printStats(); +#endif return ((void *) tree); } +void SXSIStorageInterface::printStats(){ + std::cerr << "Parsing stats : \n"; + std::cerr << _new_child << " calls to newOpenTag/newClosingTag\n"; + std::cerr << _new_text << " calls to newText\n"; + std::cerr << _new_empty_text << " calls to newEmptyText\n"; + std::cerr << _length_text << " bytes (=" << _length_text/1024 << "kb ) added to TextCollection\n"; + return; +}