ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/SiteMapper/SiteMapper.hpp
(Generate patch)

Comparing SiteMapper/SiteMapper.hpp (file contents):
Revision 141 by Douglas Thrift, 2004-03-25T19:21:58-08:00 vs.
Revision 637 by douglas, 2005-12-31T21:32:21-08:00

# Line 7 | Line 7
7   #ifndef _SiteMapper_hpp_
8   #define _SiteMapper_hpp_
9  
10 < #include <iostream>
11 < #include <fstream>
12 < #include <string>
13 < #include <sstream>
14 < #include <vector>
15 < #include <list>
16 < #include <set>
10 > #include <cxx/platform.hpp>
11  
12 < using namespace std;
13 <
14 < extern string program;
15 < extern bool debug;
12 > #ifdef MENES_PRAGMA_ONCE
13 > #pragma once
14 > #endif
15 >
16 > #include <api/files.hpp>
17 > #include <ios/string.hpp>
18 > #include <xml/document.hpp>
19 > #include <xml/nodeset.hpp>
20 > #include <xml/parse.hpp>
21 > #include <xml/textwriter.hpp>
22  
23   #include "Page.hpp"
24  
25 < #include <xalanc/Include/PlatformDefinitions.hpp>
26 < #include <xercesc/util/PlatformUtils.hpp>
27 < #include <xercesc/framework/LocalFileInputSource.hpp>
28 < #include <xalanc/XPath/XObject.hpp>
29 < #include <xalanc/XPath/XPathEvaluator.hpp>
30 < #include <xalanc/XPath/NodeRefList.hpp>
31 < #include <xalanc/DOMSupport/XalanDocumentPrefixResolver.hpp>
32 < #include <xalanc/XalanSourceTree/XalanSourceTreeDOMSupport.hpp>
33 < #include <xalanc/XalanSourceTree/XalanSourceTreeInit.hpp>
34 < #include <xalanc/XalanSourceTree/XalanSourceTreeParserLiaison.hpp>
35 <
36 < XALAN_USING_XERCES(XMLPlatformUtils)
37 < XALAN_USING_XERCES(LocalFileInputSource)
38 < XALAN_USING_XALAN(XObjectPtr)
39 < XALAN_USING_XALAN(XPath)
40 < XALAN_USING_XALAN(XPathEvaluator)
41 < XALAN_USING_XALAN(NodeRefList)
42 < XALAN_USING_XALAN(XalanDocument)
43 < XALAN_USING_XALAN(XalanDocumentPrefixResolver)
44 < XALAN_USING_XALAN(XalanDOMString)
45 < XALAN_USING_XALAN(XalanNode)
46 < XALAN_USING_XALAN(XalanSourceTreeInit)
47 < XALAN_USING_XALAN(XalanSourceTreeDOMSupport)
48 < XALAN_USING_XALAN(XalanSourceTreeParserLiaison)
25 > struct LessThan
26 > {
27 >        _finline static bool Execute(const cse::String &left, const cse::String &right)
28 >        {
29 >                const cse::String::Data &left_(left), &right_(right);
30 >                int value(ext::Compare(left.Begin(), right.Begin(), left.GetSize() < right.GetSize() ? left.GetSize() : right.GetSize()));
31 >
32 >                if (value < 0)
33 >                        return true;
34 >                else if (!value)
35 >                        return left.GetSize() < right.GetSize();
36 >                else
37 >                        return false;
38 >        }
39 > };
40  
41   class SiteMapper
42   {
43   private:
44 <        vector<Page> pages;
45 <        set<Page> newPages;
46 <        XalanSourceTreeInit init;
47 <        XalanSourceTreeDOMSupport support;
48 <        XalanSourceTreeParserLiaison liaison;
49 <        XPathEvaluator evaluator;
50 <        XPath* item;
51 <        XPath* address;
52 <        XPath* link;
62 <        XPath* list_;
63 <        XPath* port;
64 <        XPath* path;
65 <        XPath* title;
66 <        void oldMap(const string& siteMap);
67 <        void oldMap(vector<Page>& pages, XalanNode* list);
68 <        void index(const string& siteIndex);
69 <        void newMap(const string& siteMap);
44 >        cse::String comment;
45 >        ext::Vector<Page> pages;
46 >        ext::RedBlackMap<cse::String, ext::RedBlackMap<cse::String, ext::Vector<Page>, LessThan>, LessThan> newPages;
47 >        void oldMap(const cse::String &siteMap);
48 >        void oldMap(ext::Vector<Page> &pages, xml::Node* list);
49 >        void newIndex(const cse::String &siteIndex);
50 >        bool newIndex(ext::Vector<Page> &pages, Page &page);
51 >        void newMap(const cse::String &siteMap);
52 >        void newMap(ext::Vector<Page> &pages, const cse::String &childOf, ext::RedBlackMap<cse::String, ext::Vector<Page>, LessThan> &newPages);
53   public:
54 <        SiteMapper(const string& siteIndex, const string& siteMap);
55 <        ~SiteMapper() {}
54 >        SiteMapper(const cse::String &siteIndex, const cse::String &siteMap);
55 >        static cse::String program;
56 >        static bool debug;
57   };
58  
59   #endif // _SiteMapper_hpp_

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines