00001 #ifndef DOMLocator_HEADER_GUARD_ 00002 #define DOMLocator_HEADER_GUARD_ 00003 00004 /* 00005 * Copyright 2002,2004 The Apache Software Foundation. 00006 * 00007 * Licensed under the Apache License, Version 2.0 (the "License"); 00008 * you may not use this file except in compliance with the License. 00009 * You may obtain a copy of the License at 00010 * 00011 * http://www.apache.org/licenses/LICENSE-2.0 00012 * 00013 * Unless required by applicable law or agreed to in writing, software 00014 * distributed under the License is distributed on an "AS IS" BASIS, 00015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00016 * See the License for the specific language governing permissions and 00017 * limitations under the License. 00018 */ 00019 00020 /* 00021 * $Id: DOMLocator.hpp 191054 2005-06-17 02:56:35Z jberry $ 00022 */ 00023 00024 #include <xercesc/util/XercesDefs.hpp> 00025 00026 XERCES_CPP_NAMESPACE_BEGIN 00027 00028 00029 class DOMNode; 00030 00031 00040 class CDOM_EXPORT DOMLocator 00041 { 00042 protected: 00043 // ----------------------------------------------------------------------- 00044 // Hidden constructors 00045 // ----------------------------------------------------------------------- 00048 DOMLocator() {}; 00050 00051 private: 00052 // ----------------------------------------------------------------------- 00053 // Unimplemented constructors and operators 00054 // ----------------------------------------------------------------------- 00057 DOMLocator(const DOMLocator &); 00058 DOMLocator & operator = (const DOMLocator &); 00060 00061 public: 00062 // ----------------------------------------------------------------------- 00063 // All constructors are hidden, just the destructor is available 00064 // ----------------------------------------------------------------------- 00071 virtual ~DOMLocator() {}; 00073 00074 // ----------------------------------------------------------------------- 00075 // Virtual DOMLocator interface 00076 // ----------------------------------------------------------------------- 00079 // ----------------------------------------------------------------------- 00080 // Getter methods 00081 // ----------------------------------------------------------------------- 00091 virtual XMLSSize_t getLineNumber() const = 0; 00092 00102 virtual XMLSSize_t getColumnNumber() const = 0; 00103 00115 virtual XMLSSize_t getOffset() const = 0; 00116 00126 virtual DOMNode* getErrorNode() const = 0; 00127 00137 virtual const XMLCh* getURI() const = 0; 00138 00139 // ----------------------------------------------------------------------- 00140 // Setter methods 00141 // ----------------------------------------------------------------------- 00152 virtual void setLineNumber(const XMLSSize_t lineNumber) = 0; 00153 00164 virtual void setColumnNumber(const XMLSSize_t columnNumber) = 0; 00165 00176 virtual void setOffset(const XMLSSize_t offset) = 0; 00177 00188 virtual void setErrorNode(DOMNode* const errorNode) = 0; 00189 00200 virtual void setURI(const XMLCh* const uri) = 0; 00201 00203 }; 00204 00205 XERCES_CPP_NAMESPACE_END 00206 00207 #endif