X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=SXSIStorageInterface.cpp;h=0a1a715eb0f4d736a03537e3c2cee44b31c6f19e;hb=451e60ad59e35344dff62da5ca27fcd5eec1bff9;hp=e5bd7cf873c798d796ec02a6ddd28b5a3f3f27b6;hpb=95367aa932a9e179976e59ea326542c50905f5b3;p=SXSI%2Fxpathcomp.git diff --git a/SXSIStorageInterface.cpp b/SXSIStorageInterface.cpp index e5bd7cf..0a1a715 100644 --- a/SXSIStorageInterface.cpp +++ b/SXSIStorageInterface.cpp @@ -11,11 +11,11 @@ #include "SXSIStorageInterface.h" #include "Utils.h" - -SXSIStorageInterface::SXSIStorageInterface() +SXSIStorageInterface::SXSIStorageInterface(int sf,bool iet,bool dtc) { - tree = new XMLTree(); - tree->OpenDocument(false,64); + tree = NULL; + tb = new XMLTreeBuilder(); + tb ->OpenDocument(iet,sf,dtc); } SXSIStorageInterface::~SXSIStorageInterface() @@ -25,7 +25,7 @@ SXSIStorageInterface::~SXSIStorageInterface() void SXSIStorageInterface::newChild(string name) { _new_child++; - tree->NewOpenTag((unsigned char*) name.c_str()); + tb->NewOpenTag((unsigned char*) name.c_str()); } @@ -34,35 +34,37 @@ void SXSIStorageInterface::newText(string text) if (text.empty()) { _new_empty_text++; - tree->NewEmptyText(); + tb->NewEmptyText(); } else { _new_text++; _length_text += text.size(); - tree->NewText((unsigned char*) text.c_str()); + tb->NewText((unsigned char*) text.c_str()); } } - void SXSIStorageInterface::nodeFinished(string name) { - tree->NewClosingTag((unsigned char*) name.c_str()); - } + tb->NewClosingTag((unsigned char*) name.c_str()); + +} void SXSIStorageInterface::parsingFinished() { - tree->CloseDocument(); + tree = tb->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";