00001 /* 00002 * Copyright 1999-2004 The Apache Software Foundation. 00003 * 00004 * Licensed under the Apache License, Version 2.0 (the "License"); 00005 * you may not use this file except in compliance with the License. 00006 * You may obtain a copy of the License at 00007 * 00008 * http://www.apache.org/licenses/LICENSE-2.0 00009 * 00010 * Unless required by applicable law or agreed to in writing, software 00011 * distributed under the License is distributed on an "AS IS" BASIS, 00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 * See the License for the specific language governing permissions and 00014 * limitations under the License. 00015 */ 00016 #if !defined(PRINTWRITER_HEADER_GUARD_1357924680) 00017 #define PRINTWRITER_HEADER_GUARD_1357924680 00018 00019 00020 00021 // Base include file. Must be first. 00022 #include <xalanc/PlatformSupport/PlatformSupportDefinitions.hpp> 00023 00024 00025 00026 // Base class header file. 00027 #include <xalanc/PlatformSupport/Writer.hpp> 00028 00029 00030 00031 XALAN_CPP_NAMESPACE_BEGIN 00032 00033 00034 00035 class XALAN_PLATFORMSUPPORT_EXPORT PrintWriter : public Writer 00036 { 00037 public: 00038 00044 PrintWriter( bool fAutoFlush = false, MemoryManagerType& theManager XALAN_DEFAULT_MEMMGR); 00045 00046 MemoryManagerType& 00047 getMemoryManager() 00048 { 00049 return m_memoryManager; 00050 } 00051 00052 virtual 00053 ~PrintWriter(); 00054 00060 virtual bool 00061 checkError() const = 0; 00062 00063 // Functions inherited from Writer... 00064 00065 virtual void 00066 close() = 0; 00067 00068 virtual void 00069 flush() = 0; 00070 00071 00072 // Output functions inherited from Writer... 00073 00074 virtual void 00075 write( 00076 const char* s, 00077 size_t theOffset = 0, 00078 size_t theLength = npos) = 0; 00079 00080 virtual void 00081 write( 00082 const XalanDOMChar* s, 00083 XalanDOMString::size_type theOffset = 0, 00084 XalanDOMString::size_type theLength = XalanDOMString::npos) = 0; 00085 00086 virtual void 00087 write(XalanDOMChar c) = 0; 00088 00089 virtual void 00090 write( 00091 const XalanDOMString& s, 00092 XalanDOMString::size_type theOffset = 0, 00093 XalanDOMString::size_type theLength = XalanDOMString::npos) = 0; 00094 00095 // Output functions which are new... 00096 00097 #if !defined(XALAN_BOOL_AS_INT) 00098 virtual void 00099 print(bool b) = 0; 00100 #endif 00101 00102 virtual void 00103 print(char c) = 0; 00104 00105 virtual void 00106 print( 00107 const char* s, 00108 size_t theLength = npos) = 0; 00109 00110 virtual void 00111 print( 00112 const XalanDOMChar* s, 00113 XalanDOMString::size_type theLength = XalanDOMString::npos) = 0; 00114 00115 virtual void 00116 print(double d) = 0; 00117 00118 virtual void 00119 print(int i) = 0; 00120 00121 virtual void 00122 print(long l) = 0; 00123 00124 virtual void 00125 print(const XalanDOMString& s) = 0; 00126 00127 virtual void 00128 println() = 0; 00129 00130 #if !defined(XALAN_BOOL_AS_INT) 00131 virtual void 00132 println(bool b) = 0; 00133 #endif 00134 00135 virtual void 00136 println(char x) = 0; 00137 00138 virtual void 00139 println( 00140 const char* s, 00141 size_t theLength = npos) = 0; 00142 00143 virtual void 00144 println( 00145 const XalanDOMChar* s, 00146 XalanDOMString::size_type theLength = XalanDOMString::npos) = 0; 00147 00148 virtual void 00149 println(double x) = 0; 00150 00151 virtual void 00152 println(int x) = 0; 00153 00154 virtual void 00155 println(long x) = 0; 00156 00157 virtual void 00158 println(const XalanDOMString& s) = 0; 00159 00160 protected: 00161 00162 const bool m_fAutoFlush; 00163 00164 MemoryManagerType& m_memoryManager; 00165 00166 // Some static strings to help derived classes... 00167 static const XalanDOMChar s_trueString[]; 00168 00169 static const XalanDOMChar s_falseString[]; 00170 00171 static const XalanDOMChar s_newlineString[]; 00172 00173 private: 00174 00175 // Not implemented 00176 PrintWriter(const PrintWriter&); 00177 00178 PrintWriter& 00179 operator=(const PrintWriter&); 00180 00181 bool 00182 operator==(const PrintWriter&); 00183 }; 00184 00185 00186 00187 XALAN_CPP_NAMESPACE_END 00188 00189 00190 00191 #endif // PRINTWRITER_HEADER_GUARD_1357924680
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.10 |
|