00001 #ifndef DOMCharacterData_HEADER_GUARD_ 00002 #define DOMCharacterData_HEADER_GUARD_ 00003 00004 /* 00005 * Copyright 2001-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: DOMCharacterData.hpp 176280 2005-01-07 15:32:34Z amassari $ 00022 */ 00023 00024 #include <xercesc/util/XercesDefs.hpp> 00025 #include <xercesc/dom/DOMNode.hpp> 00026 00027 XERCES_CPP_NAMESPACE_BEGIN 00028 00029 00045 class CDOM_EXPORT DOMCharacterData: public DOMNode { 00046 protected: 00047 // ----------------------------------------------------------------------- 00048 // Hidden constructors 00049 // ----------------------------------------------------------------------- 00052 DOMCharacterData() {} 00053 DOMCharacterData(const DOMCharacterData &other) : DOMNode(other) {} 00055 00056 private: 00057 // ----------------------------------------------------------------------- 00058 // Unimplemented constructors and operators 00059 // ----------------------------------------------------------------------- 00062 DOMCharacterData & operator = (const DOMCharacterData &); 00064 00065 public: 00066 // ----------------------------------------------------------------------- 00067 // All constructors are hidden, just the destructor is available 00068 // ----------------------------------------------------------------------- 00075 virtual ~DOMCharacterData() {}; 00077 00078 // ----------------------------------------------------------------------- 00079 // Virtual DOMCharacterData interface 00080 // ----------------------------------------------------------------------- 00083 // ----------------------------------------------------------------------- 00084 // Getter methods 00085 // ----------------------------------------------------------------------- 00099 virtual const XMLCh * getData() const = 0; 00100 00109 virtual XMLSize_t getLength() const = 0; 00110 00125 virtual const XMLCh * substringData(XMLSize_t offset, 00126 XMLSize_t count) const = 0; 00127 00128 // ----------------------------------------------------------------------- 00129 // String methods 00130 // ----------------------------------------------------------------------- 00141 virtual void appendData(const XMLCh *arg) = 0; 00142 00154 virtual void insertData(XMLSize_t offset, const XMLCh *arg) = 0; 00155 00173 virtual void deleteData(XMLSize_t offset, 00174 XMLSize_t count) = 0; 00175 00195 virtual void replaceData(XMLSize_t offset, 00196 XMLSize_t count, 00197 const XMLCh *arg) = 0; 00198 00205 virtual void setData(const XMLCh *data) = 0; 00207 00208 }; 00209 00210 XERCES_CPP_NAMESPACE_END 00211 00212 #endif 00213 00214