00001 #ifndef DOMImplementationLS_HEADER_GUARD_
00002 #define DOMImplementationLS_HEADER_GUARD_
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 #include <xercesc/util/PlatformUtils.hpp>
00026 
00027 XERCES_CPP_NAMESPACE_BEGIN
00028 
00029 
00030 class DOMBuilder;
00031 class DOMWriter;
00032 class DOMInputSource;
00033 class MemoryManager;
00034 class XMLGrammarPool;
00035 
00049 class  DOMImplementationLS
00050 {
00051 protected:
00052     
00053     
00054     
00057     DOMImplementationLS() {};
00059 
00060 private:
00061     
00062     
00063     
00066     DOMImplementationLS(const DOMImplementationLS &);
00067     DOMImplementationLS & operator = (const DOMImplementationLS &);
00069 
00070 public:
00071     
00072     
00073     
00080     virtual ~DOMImplementationLS() {};
00082 
00083     
00084     
00085     
00094     enum
00095     {
00096         MODE_SYNCHRONOUS = 1,
00097         MODE_ASYNCHRONOUS = 2
00098     };
00100 
00101     
00102     
00103     
00106     
00107     
00108     
00140     virtual DOMBuilder* createDOMBuilder(const short            mode,
00141                                          const XMLCh* const     schemaType,
00142                                          MemoryManager* const   manager = XMLPlatformUtils::fgMemoryManager,
00143                                          XMLGrammarPool*  const gramPool = 0) = 0;
00144 
00145 
00157     virtual DOMWriter* createDOMWriter(MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager) = 0;
00158 
00171     virtual DOMInputSource* createDOMInputSource() = 0;
00172 
00174 };
00175 
00176 
00177 XERCES_CPP_NAMESPACE_END
00178 
00179 #endif