Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.8

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

XSLTProcessor.hpp

Go to the documentation of this file.
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 00017 #if !defined(XALAN_XSLTPROCESSOR_HEADER_GUARD) 00018 #define XALAN_XSLTPROCESSOR_HEADER_GUARD 00019 00020 00021 00022 // Base include file. Must be first. 00023 #include "XSLTDefinitions.hpp" 00024 00025 00026 00027 #include <cstddef> 00028 00029 00030 00031 XALAN_DECLARE_XERCES_CLASS(Locator) 00032 00033 00034 00035 XALAN_CPP_NAMESPACE_BEGIN 00036 00037 00038 00039 typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType; 00040 00041 00042 00043 class ElemTemplateElement; 00044 class FormatterListener; 00045 class GenerateEvent; 00046 class NodeRefListBase; 00047 class PrefixResolver; 00048 class PrintWriter; 00049 class SelectionEvent; 00050 class StylesheetConstructionContext; 00051 class StylesheetExecutionContext; 00052 class StylesheetRoot; 00053 class TraceListener; 00054 class TracerEvent; 00055 class XalanDOMString; 00056 class XalanDocument; 00057 class XalanElement; 00058 class XalanNode; 00059 class XMLParserLiaison; 00060 class XObject; 00061 class XObjectPtr; 00062 class XPath; 00063 class XPathExecutionContext; 00064 class XSLTInputSource; 00065 class XSLTResultTarget; 00066 00067 00068 00079 class XALAN_XSLT_EXPORT XSLTProcessor 00080 { 00081 public: 00082 00083 typedef size_t size_type; 00084 00085 XSLTProcessor(); 00086 00087 virtual 00088 ~XSLTProcessor(); 00089 00102 virtual void 00103 process( 00104 const XSLTInputSource& inputSource, 00105 const XSLTInputSource& stylesheetSource, 00106 XSLTResultTarget& outputTarget, 00107 StylesheetConstructionContext& constructionContext, 00108 StylesheetExecutionContext& executionContext) = 0; 00109 00121 virtual void 00122 process( 00123 const XSLTInputSource& inputSource, 00124 XSLTResultTarget& outputTarget, 00125 StylesheetExecutionContext& executionContext) = 0; 00126 00136 virtual StylesheetRoot* 00137 processStylesheet( 00138 const XSLTInputSource& stylesheetSource, 00139 StylesheetConstructionContext& constructionContext) = 0; 00140 00150 virtual StylesheetRoot* 00151 processStylesheet( 00152 const XalanDOMString& xsldocURLString, 00153 StylesheetConstructionContext& constructionContext) = 0; 00154 00159 virtual void 00160 reset() = 0; 00161 00168 virtual XalanNode* 00169 getSourceTreeFromInput(const XSLTInputSource& inputSource) = 0; 00170 00176 virtual const StylesheetRoot* 00177 getStylesheetRoot() const = 0; 00178 00184 virtual void 00185 setStylesheetRoot(const StylesheetRoot* theStylesheet) = 0; 00186 00193 virtual void 00194 setExecutionContext(StylesheetExecutionContext* theExecutionContext) = 0; 00195 00199 virtual void 00200 resolveTopLevelParams(StylesheetExecutionContext& executionContext) = 0; 00201 00207 virtual XMLParserLiaison& 00208 getXMLParserLiaison() const = 0; 00209 00215 virtual const XalanDOMString 00216 getUniqueNamespaceValue() = 0; 00217 00223 virtual void 00224 getUniqueNamespaceValue(XalanDOMString& theValue) = 0; 00225 00233 virtual void 00234 setStylesheetParam( 00235 const XalanDOMString& key, 00236 XObjectPtr value) = 0; 00237 00245 virtual void 00246 setStylesheetParam( 00247 const XalanDOMString& key, 00248 const XalanDOMString& expression) = 0; 00249 00255 virtual FormatterListener* 00256 getFormatterListener() const = 0; 00257 00263 virtual void 00264 setFormatterListener(FormatterListener* flistener) = 0; 00265 00271 virtual size_type 00272 getTraceListeners() const = 0; 00273 00279 virtual void 00280 addTraceListener(TraceListener* tl) = 0; 00281 00287 virtual void 00288 removeTraceListener(TraceListener* tl) = 0; 00289 00295 virtual void 00296 fireGenerateEvent(const GenerateEvent& ge) = 0; 00297 00303 virtual void 00304 fireTraceEvent(const TracerEvent& te) = 0; 00305 00311 virtual void 00312 fireSelectEvent(const SelectionEvent& se) = 0; 00313 00319 virtual bool 00320 getTraceSelects() const = 0; 00321 00330 virtual void 00331 traceSelect( 00332 StylesheetExecutionContext& executionContext, 00333 const ElemTemplateElement& theStylesheetElement, 00334 const NodeRefListBase& nl, 00335 const XPath* xpath) const = 0; 00336 00345 virtual void 00346 setQuietConflictWarnings(bool b) = 0; 00347 00356 virtual void 00357 setDiagnosticsOutput(PrintWriter* pw) = 0; 00358 00366 virtual void 00367 message( 00368 const XalanDOMString& msg, 00369 const XalanNode* sourceNode = 0, 00370 const ElemTemplateElement* styleNode = 0) const = 0; 00371 00379 virtual void 00380 message( 00381 const XalanDOMString& msg, 00382 const LocatorType& locator, 00383 const XalanNode* sourceNode = 0) const = 0; 00384 00392 virtual void 00393 warn( 00394 const XalanDOMString& msg, 00395 const XalanNode* sourceNode = 0, 00396 const ElemTemplateElement* styleNode = 0) const = 0; 00397 00405 virtual void 00406 warn( 00407 const XalanDOMString& msg, 00408 const LocatorType& locator, 00409 const XalanNode* sourceNode = 0) const = 0; 00410 00411 00419 virtual void 00420 error( 00421 const XalanDOMString& msg, 00422 const XalanNode* sourceNode = 0, 00423 const ElemTemplateElement* styleNode = 0) const = 0; 00424 00432 virtual void 00433 error( 00434 const XalanDOMString& msg, 00435 const LocatorType& locator, 00436 const XalanNode* sourceNode = 0) const = 0; 00437 }; 00438 00439 00440 00441 XALAN_CPP_NAMESPACE_END 00442 00443 00444 00445 #endif // XALAN_XSLTPROCESSOR_HEADER_GUARD

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.8
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.