<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Xalan-C++ API : Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<!-- The head section is copied from Doxygen 1.7.1 generated default output -->
<body>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center"><a href="../index.html">The Xalan C++ XSLT Processor Version 1.11</a></h3>
<hr/>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<h1>XSLTProcessor.hpp</h1>  </div>
</div>
<div class="contents">
<a href="XSLTProcessor_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span>
<a name="l00003"></a>00003 <span class="comment"> * or more contributor license agreements. See the NOTICE file</span>
<a name="l00004"></a>00004 <span class="comment"> * distributed with this work for additional information</span>
<a name="l00005"></a>00005 <span class="comment"> * regarding copyright ownership. The ASF licenses this file</span>
<a name="l00006"></a>00006 <span class="comment"> * to you under the Apache License, Version 2.0 (the  &quot;License&quot;);</span>
<a name="l00007"></a>00007 <span class="comment"> * you may not use this file except in compliance with the License.</span>
<a name="l00008"></a>00008 <span class="comment"> * You may obtain a copy of the License at</span>
<a name="l00009"></a>00009 <span class="comment"> *</span>
<a name="l00010"></a>00010 <span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span>
<a name="l00011"></a>00011 <span class="comment"> *</span>
<a name="l00012"></a>00012 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
<a name="l00013"></a>00013 <span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span>
<a name="l00014"></a>00014 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
<a name="l00015"></a>00015 <span class="comment"> * See the License for the specific language governing permissions and</span>
<a name="l00016"></a>00016 <span class="comment"> * limitations under the License.</span>
<a name="l00017"></a>00017 <span class="comment"> */</span>
<a name="l00018"></a>00018 
<a name="l00019"></a>00019 <span class="preprocessor">#if !defined(XALAN_XSLTPROCESSOR_HEADER_GUARD)</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#define XALAN_XSLTPROCESSOR_HEADER_GUARD</span>
<a name="l00021"></a>00021 <span class="preprocessor"></span>
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 
<a name="l00024"></a>00024 <span class="comment">// Base include file.  Must be first.</span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &quot;<a class="code" href="XSLTDefinitions_8hpp.html">XSLTDefinitions.hpp</a>&quot;</span>
<a name="l00026"></a>00026 
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;cstddef&gt;</span>
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 
<a name="l00032"></a>00032 
<a name="l00033"></a>00033 <span class="preprocessor">#include &quot;<a class="code" href="ProblemListenerBase_8hpp.html">xalanc/PlatformSupport/ProblemListenerBase.hpp</a>&quot;</span>
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 
<a name="l00037"></a>00037 XALAN_DECLARE_XERCES_CLASS(Locator)
<a name="l00038"></a>00038 
<a name="l00039"></a>00039 
<a name="l00040"></a>00040 
<a name="l00041"></a>00041 XALAN_CPP_NAMESPACE_BEGIN
<a name="l00042"></a>00042 
<a name="l00043"></a>00043 
<a name="l00044"></a>00044 
<a name="l00045"></a>00045 <a class="code" href="XSLTProcessor_8hpp.html#a24af2755e58bade5ff0d5965b855e56a">XALAN_USING_XERCES</a>(Locator);
<a name="l00046"></a>00046 
<a name="l00047"></a>00047 
<a name="l00048"></a>00048 
<a name="l00049"></a>00049 class <a class="code" href="classElemTemplateElement.html">ElemTemplateElement</a>;
<a name="l00050"></a>00050 class <a class="code" href="classFormatterListener.html" title="A SAX-based formatter interface for the XSL processor.">FormatterListener</a>;
<a name="l00051"></a>00051 class <a class="code" href="classGenerateEvent.html" title="This is the class for events generated by the XSL processor after it generates a new node in the resu...">GenerateEvent</a>;
<a name="l00052"></a>00052 class <a class="code" href="classNodeRefListBase.html" title="Local implementation of NodeRefList.">NodeRefListBase</a>;
<a name="l00053"></a>00053 class <a class="code" href="classPrefixResolver.html" title="This class defines an interface for classes that resolve namespace prefixes to their URIs...">PrefixResolver</a>;
<a name="l00054"></a>00054 class <a class="code" href="classPrintWriter.html">PrintWriter</a>;
<a name="l00055"></a>00055 class <a class="code" href="classSelectionEvent.html">SelectionEvent</a>;
<a name="l00056"></a>00056 class <a class="code" href="classStylesheetConstructionContext.html">StylesheetConstructionContext</a>;
<a name="l00057"></a>00057 class <a class="code" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a>;
<a name="l00058"></a>00058 class <a class="code" href="classStylesheetRoot.html" title="This acts as the stylesheet root of the stylesheet tree, and holds values that are shared by all styl...">StylesheetRoot</a>;
<a name="l00059"></a>00059 class <a class="code" href="classTraceListener.html">TraceListener</a>;
<a name="l00060"></a>00060 class <a class="code" href="classTracerEvent.html" title="This is the parent class of events generated for tracing the progress of the XSL processor.">TracerEvent</a>;
<a name="l00061"></a>00061 class <a class="code" href="classXalanDOMString.html">XalanDOMString</a>;
<a name="l00062"></a>00062 class <a class="code" href="classXalanDocument.html">XalanDocument</a>;
<a name="l00063"></a>00063 class <a class="code" href="classXalanElement.html">XalanElement</a>;
<a name="l00064"></a>00064 class <a class="code" href="classXalanNode.html">XalanNode</a>;
<a name="l00065"></a>00065 class <a class="code" href="classXMLParserLiaison.html">XMLParserLiaison</a>;
<a name="l00066"></a>00066 class <a class="code" href="classXObject.html" title="Class to hold XPath return types.">XObject</a>;
<a name="l00067"></a>00067 class <a class="code" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a>;
<a name="l00068"></a>00068 class <a class="code" href="classXPath.html">XPath</a>;
<a name="l00069"></a>00069 class <a class="code" href="classXPathExecutionContext.html">XPathExecutionContext</a>;
<a name="l00070"></a>00070 class <a class="code" href="classXSLTInputSource.html">XSLTInputSource</a>;
<a name="l00071"></a>00071 class <a class="code" href="classXSLTResultTarget.html">XSLTResultTarget</a>;
<a name="l00072"></a>00072 
<a name="l00073"></a>00073 
<a name="l00074"></a>00074 <span class="comment"></span>
<a name="l00075"></a>00075 <span class="comment">/**</span>
<a name="l00076"></a>00076 <span class="comment"> * This is an interface for an XSLT Processor engine. It&#39;s the responsibility</span>
<a name="l00077"></a>00077 <span class="comment"> * of the implementation of the XSLTProcessor interface, collaborating with a</span>
<a name="l00078"></a>00078 <span class="comment"> * XMLParserLiaison, the DOM, and the XPath engine, to transform a source tree</span>
<a name="l00079"></a>00079 <span class="comment"> * of nodes into a result tree according to instructions and templates</span>
<a name="l00080"></a>00080 <span class="comment"> * specified by a stylesheet tree.  The methods process(...) are</span>
<a name="l00081"></a>00081 <span class="comment"> * the primary public entry points.</span>
<a name="l00082"></a>00082 <span class="comment"> * </span>
<a name="l00083"></a>00083 <span class="comment"> * If you reuse the processor instance, you should call reset() between calls.</span>
<a name="l00084"></a>00084 <span class="comment"> */</span>
<a name="l00085"></a><a class="code" href="classXSLTProcessor.html">00085</a> class <a class="code" href="XSLTDefinitions_8hpp.html#afe13e115e49db23eff1daccf7343935f">XALAN_XSLT_EXPORT</a> <a class="code" href="classXSLTProcessor.html" title="This is an interface for an XSLT Processor engine.">XSLTProcessor</a> : public <a class="code" href="classProblemListenerBase.html" title="This is the abstract class that is used when reporting a problem some kind, that requires a message...">ProblemListenerBase</a>
<a name="l00086"></a>00086 {
<a name="l00087"></a>00087 <span class="keyword">public</span>:
<a name="l00088"></a>00088 
<a name="l00089"></a><a class="code" href="classXSLTProcessor.html#a1132188b2bd042ae067d9046768e7ea0">00089</a>     <span class="keyword">typedef</span> XalanSize_t     size_type;
<a name="l00090"></a>00090 
<a name="l00091"></a>00091     <a class="code" href="classXSLTProcessor.html" title="This is an interface for an XSLT Processor engine.">XSLTProcessor</a>();
<a name="l00092"></a>00092 
<a name="l00093"></a>00093     <span class="keyword">virtual</span>
<a name="l00094"></a>00094     ~<a class="code" href="classXSLTProcessor.html" title="This is an interface for an XSLT Processor engine.">XSLTProcessor</a>();
<a name="l00095"></a>00095 
<a name="l00096"></a>00096 
<a name="l00097"></a>00097     <span class="comment">// These interfaces are inherited from ProblemListenerBase.</span>
<a name="l00098"></a>00098 
<a name="l00099"></a>00099     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00100"></a>00100     problem(
<a name="l00101"></a>00101             <a class="code" href="classProblemListenerBase.html#ae363b5e4919bbe4e41f6b2c1b322ee7c">eSource</a>                 source,
<a name="l00102"></a>00102             <a class="code" href="classProblemListenerBase.html#a1fec6cce6cc3429e200355330a41152a">eClassification</a>         classification,
<a name="l00103"></a>00103             <span class="keyword">const</span> XalanDOMString&amp;   msg,
<a name="l00104"></a>00104             <span class="keyword">const</span> Locator*          locator,
<a name="l00105"></a>00105             <span class="keyword">const</span> XalanNode*        sourceNode) = 0;
<a name="l00106"></a>00106 
<a name="l00107"></a>00107     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00108"></a>00108     problem(
<a name="l00109"></a>00109             <a class="code" href="classProblemListenerBase.html#ae363b5e4919bbe4e41f6b2c1b322ee7c">eSource</a>                 source,
<a name="l00110"></a>00110             <a class="code" href="classProblemListenerBase.html#a1fec6cce6cc3429e200355330a41152a">eClassification</a>         classification,
<a name="l00111"></a>00111             <span class="keyword">const</span> XalanDOMString&amp;   msg,
<a name="l00112"></a>00112             <span class="keyword">const</span> XalanNode*        sourceNode) = 0;
<a name="l00113"></a>00113 
<a name="l00114"></a>00114     <span class="comment">// These interfaces are new to XSLTProcessor</span><span class="comment"></span>
<a name="l00115"></a>00115 <span class="comment">    /**</span>
<a name="l00116"></a>00116 <span class="comment">     * Transform the source tree to the output in the given result tree target.</span>
<a name="l00117"></a>00117 <span class="comment">     * The processor will process the input source, the stylesheet source,</span>
<a name="l00118"></a>00118 <span class="comment">     * and transform to the output target.</span>
<a name="l00119"></a>00119 <span class="comment">     *</span>
<a name="l00120"></a>00120 <span class="comment">     * @param inputSource         input source</span>
<a name="l00121"></a>00121 <span class="comment">     * @param stylesheetSource    stylesheet source</span>
<a name="l00122"></a>00122 <span class="comment">     * @param outputTarget        output source tree</span>
<a name="l00123"></a>00123 <span class="comment">     * @param constructionContext context for construction of objects</span>
<a name="l00124"></a>00124 <span class="comment">     * @param executionContext    current execution context</span>
<a name="l00125"></a>00125 <span class="comment">     * @exception XSLProcessorException </span>
<a name="l00126"></a>00126 <span class="comment">     */</span>
<a name="l00127"></a>00127     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00128"></a>00128     process(
<a name="l00129"></a>00129         <span class="keyword">const</span> XSLTInputSource&amp;          inputSource,
<a name="l00130"></a>00130         <span class="keyword">const</span> XSLTInputSource&amp;          stylesheetSource,
<a name="l00131"></a>00131         XSLTResultTarget&amp;               outputTarget,
<a name="l00132"></a>00132         StylesheetConstructionContext&amp;  constructionContext,
<a name="l00133"></a>00133         StylesheetExecutionContext&amp;     executionContext) = 0;
<a name="l00134"></a>00134 <span class="comment"></span>
<a name="l00135"></a>00135 <span class="comment">    /**</span>
<a name="l00136"></a>00136 <span class="comment">     * Transform the source tree to the output in the given result tree target.</span>
<a name="l00137"></a>00137 <span class="comment">     * This function does not create a stylesheet tree, it assumes the</span>
<a name="l00138"></a>00138 <span class="comment">     * provided StylesheetExecutionContext has the stylesheet tree to use. This</span>
<a name="l00139"></a>00139 <span class="comment">     * is set by calling StylesheetExecutionContext::setStylesheetRoot().</span>
<a name="l00140"></a>00140 <span class="comment">     *</span>
<a name="l00141"></a>00141 <span class="comment">     * @param inputSource         input source</span>
<a name="l00142"></a>00142 <span class="comment">     * @param outputTarget        output source tree</span>
<a name="l00143"></a>00143 <span class="comment">     * @param executionContext    current execution context</span>
<a name="l00144"></a>00144 <span class="comment">     * @exception XSLProcessorException </span>
<a name="l00145"></a>00145 <span class="comment">     */</span>
<a name="l00146"></a>00146     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00147"></a>00147     process(
<a name="l00148"></a>00148             <span class="keyword">const</span> XSLTInputSource&amp;          inputSource,
<a name="l00149"></a>00149             XSLTResultTarget&amp;               outputTarget,
<a name="l00150"></a>00150             StylesheetExecutionContext&amp;     executionContext) = 0;
<a name="l00151"></a>00151 <span class="comment"></span>
<a name="l00152"></a>00152 <span class="comment">    /**</span>
<a name="l00153"></a>00153 <span class="comment">     * Given a stylesheet input source, compile the stylesheet into an internal</span>
<a name="l00154"></a>00154 <span class="comment">     * representation.</span>
<a name="l00155"></a>00155 <span class="comment">     *</span>
<a name="l00156"></a>00156 <span class="comment">     * @param stylesheetSource    input source for the stylesheet</span>
<a name="l00157"></a>00157 <span class="comment">     * @param constructionContext context for construction of objects</span>
<a name="l00158"></a>00158 <span class="comment">     * @return pointer to the compiled stylesheet object</span>
<a name="l00159"></a>00159 <span class="comment">     * @exception XSLProcessorException </span>
<a name="l00160"></a>00160 <span class="comment">     */</span>
<a name="l00161"></a>00161     <span class="keyword">virtual</span> StylesheetRoot*
<a name="l00162"></a>00162     processStylesheet(
<a name="l00163"></a>00163             <span class="keyword">const</span> XSLTInputSource&amp;          stylesheetSource,
<a name="l00164"></a>00164             StylesheetConstructionContext&amp;  constructionContext) = 0;
<a name="l00165"></a>00165   <span class="comment"></span>
<a name="l00166"></a>00166 <span class="comment">    /**</span>
<a name="l00167"></a>00167 <span class="comment">     * Given a URI to an XSL stylesheet, compile the stylesheet into an internal</span>
<a name="l00168"></a>00168 <span class="comment">     * representation.</span>
<a name="l00169"></a>00169 <span class="comment">     *</span>
<a name="l00170"></a>00170 <span class="comment">     * @param xmldocURLString URI to the input XML document</span>
<a name="l00171"></a>00171 <span class="comment">     * @param constructionContext context for construction of objects</span>
<a name="l00172"></a>00172 <span class="comment">     * @return pointer to compiled stylesheet object</span>
<a name="l00173"></a>00173 <span class="comment">     * @exception XSLProcessorException </span>
<a name="l00174"></a>00174 <span class="comment">     */</span>
<a name="l00175"></a>00175     <span class="keyword">virtual</span> StylesheetRoot*
<a name="l00176"></a>00176     processStylesheet(
<a name="l00177"></a>00177             <span class="keyword">const</span> XalanDOMString&amp;           xsldocURLString,
<a name="l00178"></a>00178             StylesheetConstructionContext&amp;  constructionContext) = 0;
<a name="l00179"></a>00179   <span class="comment"></span>
<a name="l00180"></a>00180 <span class="comment">    /**</span>
<a name="l00181"></a>00181 <span class="comment">     * Reset the state.  This needs to be called after a process() call </span>
<a name="l00182"></a>00182 <span class="comment">     * is invoked, if the processor is to be used again.</span>
<a name="l00183"></a>00183 <span class="comment">     */</span>
<a name="l00184"></a>00184     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00185"></a>00185     reset() = 0;
<a name="l00186"></a>00186   <span class="comment"></span>
<a name="l00187"></a>00187 <span class="comment">    /**</span>
<a name="l00188"></a>00188 <span class="comment">     * Given an input source, get the source tree.</span>
<a name="l00189"></a>00189 <span class="comment">     *</span>
<a name="l00190"></a>00190 <span class="comment">     * @param inputSource pointer to input source</span>
<a name="l00191"></a>00191 <span class="comment">     * @return source tree</span>
<a name="l00192"></a>00192 <span class="comment">     */</span>
<a name="l00193"></a>00193     <span class="keyword">virtual</span> XalanNode*
<a name="l00194"></a>00194     getSourceTreeFromInput(<span class="keyword">const</span> XSLTInputSource&amp;   inputSource) = 0;
<a name="l00195"></a>00195 <span class="comment"></span>
<a name="l00196"></a>00196 <span class="comment">    /**</span>
<a name="l00197"></a>00197 <span class="comment">     * Retrieve the root stylesheet.</span>
<a name="l00198"></a>00198 <span class="comment">     * </span>
<a name="l00199"></a>00199 <span class="comment">     * @return pointer to root stylesheet</span>
<a name="l00200"></a>00200 <span class="comment">     */</span>
<a name="l00201"></a>00201     <span class="keyword">virtual</span> <span class="keyword">const</span> StylesheetRoot*
<a name="l00202"></a>00202     getStylesheetRoot() <span class="keyword">const</span> = 0;
<a name="l00203"></a>00203 <span class="comment"></span>
<a name="l00204"></a>00204 <span class="comment">    /**</span>
<a name="l00205"></a>00205 <span class="comment">     * Set the root stylesheet.</span>
<a name="l00206"></a>00206 <span class="comment">     * </span>
<a name="l00207"></a>00207 <span class="comment">     * @param theStylesheet pointer to new root stylesheet</span>
<a name="l00208"></a>00208 <span class="comment">     */</span>
<a name="l00209"></a>00209     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00210"></a>00210     setStylesheetRoot(<span class="keyword">const</span> StylesheetRoot*     theStylesheet) = 0;
<a name="l00211"></a>00211 <span class="comment"></span>
<a name="l00212"></a>00212 <span class="comment">    /**</span>
<a name="l00213"></a>00213 <span class="comment">     * Set the execution context. Must be set if after calling</span>
<a name="l00214"></a>00214 <span class="comment">     * setStylesheetRoot.</span>
<a name="l00215"></a>00215 <span class="comment">     * </span>
<a name="l00216"></a>00216 <span class="comment">     * @param theExecutionContext pointer to new execution context.</span>
<a name="l00217"></a>00217 <span class="comment">     */</span>
<a name="l00218"></a>00218     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00219"></a>00219     setExecutionContext(StylesheetExecutionContext*     theExecutionContext) = 0;
<a name="l00220"></a>00220 <span class="comment"></span>
<a name="l00221"></a>00221 <span class="comment">    /**</span>
<a name="l00222"></a>00222 <span class="comment">     * Resolve the params that were pushed by the caller.</span>
<a name="l00223"></a>00223 <span class="comment">     */</span>
<a name="l00224"></a>00224     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00225"></a>00225     resolveTopLevelParams(StylesheetExecutionContext&amp;   executionContext) = 0;
<a name="l00226"></a>00226 <span class="comment"></span>
<a name="l00227"></a>00227 <span class="comment">    /**</span>
<a name="l00228"></a>00228 <span class="comment">     * Get the XML Parser Liaison that this processor uses.</span>
<a name="l00229"></a>00229 <span class="comment">     *</span>
<a name="l00230"></a>00230 <span class="comment">     * @return XML parser liaison object</span>
<a name="l00231"></a>00231 <span class="comment">     */</span>
<a name="l00232"></a>00232     <span class="keyword">virtual</span> XMLParserLiaison&amp;
<a name="l00233"></a>00233     getXMLParserLiaison() <span class="keyword">const</span> = 0;
<a name="l00234"></a>00234 
<a name="l00235"></a>00235 <span class="comment"></span>
<a name="l00236"></a>00236 <span class="comment">    /**</span>
<a name="l00237"></a>00237 <span class="comment">     * Generate a random namespace prefix guaranteed to be unique.</span>
<a name="l00238"></a>00238 <span class="comment">     *</span>
<a name="l00239"></a>00239 <span class="comment">     * @param theValue A string for returning the new prefix</span>
<a name="l00240"></a>00240 <span class="comment">     */</span>
<a name="l00241"></a>00241     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00242"></a>00242     getUniqueNamespaceValue(XalanDOMString&amp;     theValue) = 0;
<a name="l00243"></a>00243 <span class="comment"></span>
<a name="l00244"></a>00244 <span class="comment">   /**</span>
<a name="l00245"></a>00245 <span class="comment">    * Set a top-level parameter, which the stylesheet can access</span>
<a name="l00246"></a>00246 <span class="comment">    * with a top-level xsl:param.  Top-level params are &quot;sticky,&quot;</span>
<a name="l00247"></a>00247 <span class="comment">    * and must be removed with a call to clearStylesheetParams().</span>
<a name="l00248"></a>00248 <span class="comment">    *</span>
<a name="l00249"></a>00249 <span class="comment">    * @param key   name of the parameter</span>
<a name="l00250"></a>00250 <span class="comment">    * @param value XObject value for parameter</span>
<a name="l00251"></a>00251 <span class="comment">    */</span>
<a name="l00252"></a>00252    <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00253"></a>00253    setStylesheetParam(
<a name="l00254"></a>00254             <span class="keyword">const</span> XalanDOMString&amp;   key,
<a name="l00255"></a>00255             XObjectPtr              value) = 0;
<a name="l00256"></a>00256 <span class="comment"></span>
<a name="l00257"></a>00257 <span class="comment">  /**</span>
<a name="l00258"></a>00258 <span class="comment">    * Set a top-level parameter, which the stylesheet can access</span>
<a name="l00259"></a>00259 <span class="comment">    * with a top-level xsl:param.  Top-level params are &quot;sticky,&quot;</span>
<a name="l00260"></a>00260 <span class="comment">    * and must be removed with a call to clearStylesheetParams().</span>
<a name="l00261"></a>00261 <span class="comment">    *</span>
<a name="l00262"></a>00262 <span class="comment">    * @param key name of the param</span>
<a name="l00263"></a>00263 <span class="comment">    * @param expression expression that will be evaluated</span>
<a name="l00264"></a>00264 <span class="comment">    */</span>
<a name="l00265"></a>00265     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00266"></a>00266     setStylesheetParam(
<a name="l00267"></a>00267             <span class="keyword">const</span> XalanDOMString&amp;   key,
<a name="l00268"></a>00268             <span class="keyword">const</span> XalanDOMString&amp;   expression) = 0;
<a name="l00269"></a>00269 <span class="comment"></span>
<a name="l00270"></a>00270 <span class="comment">  /**</span>
<a name="l00271"></a>00271 <span class="comment">    * Clear any stylesheet params.</span>
<a name="l00272"></a>00272 <span class="comment">    */</span>
<a name="l00273"></a>00273     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00274"></a>00274     clearStylesheetParams() = 0;
<a name="l00275"></a>00275 <span class="comment"></span>
<a name="l00276"></a>00276 <span class="comment">    /**</span>
<a name="l00277"></a>00277 <span class="comment">     * Get the current formatter listener.</span>
<a name="l00278"></a>00278 <span class="comment">     * </span>
<a name="l00279"></a>00279 <span class="comment">     * @return pointer to formatter listener</span>
<a name="l00280"></a>00280 <span class="comment">     */</span>
<a name="l00281"></a>00281     <span class="keyword">virtual</span> FormatterListener*
<a name="l00282"></a>00282     getFormatterListener() <span class="keyword">const</span> = 0;
<a name="l00283"></a>00283   <span class="comment"></span>
<a name="l00284"></a>00284 <span class="comment">    /**</span>
<a name="l00285"></a>00285 <span class="comment">     * Set the current formatter listener.</span>
<a name="l00286"></a>00286 <span class="comment">     *</span>
<a name="l00287"></a>00287 <span class="comment">     * @param flistener pointer to new formatter listener</span>
<a name="l00288"></a>00288 <span class="comment">     */</span>
<a name="l00289"></a>00289     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00290"></a>00290     setFormatterListener(FormatterListener*     flistener) = 0;  
<a name="l00291"></a>00291 <span class="comment"></span>
<a name="l00292"></a>00292 <span class="comment">    /**</span>
<a name="l00293"></a>00293 <span class="comment">     * Determine the number of trace listeners.</span>
<a name="l00294"></a>00294 <span class="comment">     * </span>
<a name="l00295"></a>00295 <span class="comment">     * @return number of listeners</span>
<a name="l00296"></a>00296 <span class="comment">     */</span>
<a name="l00297"></a>00297     <span class="keyword">virtual</span> size_type
<a name="l00298"></a>00298     getTraceListeners() <span class="keyword">const</span> = 0;
<a name="l00299"></a>00299 <span class="comment"></span>
<a name="l00300"></a>00300 <span class="comment">    /**</span>
<a name="l00301"></a>00301 <span class="comment">     * Add a trace listener for the purposes of debugging and diagnosis.</span>
<a name="l00302"></a>00302 <span class="comment">     * </span>
<a name="l00303"></a>00303 <span class="comment">     * @param tl pointer to listener to add</span>
<a name="l00304"></a>00304 <span class="comment">     */</span>
<a name="l00305"></a>00305     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00306"></a>00306     addTraceListener(TraceListener*     tl) = 0;
<a name="l00307"></a>00307 <span class="comment"></span>
<a name="l00308"></a>00308 <span class="comment">    /**</span>
<a name="l00309"></a>00309 <span class="comment">     * Remove a trace listener.</span>
<a name="l00310"></a>00310 <span class="comment">     *</span>
<a name="l00311"></a>00311 <span class="comment">     * @param tl Trace listener to be removed.</span>
<a name="l00312"></a>00312 <span class="comment">     */</span>
<a name="l00313"></a>00313     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00314"></a>00314     removeTraceListener(TraceListener*  tl) = 0;
<a name="l00315"></a>00315 <span class="comment"></span>
<a name="l00316"></a>00316 <span class="comment">    /**</span>
<a name="l00317"></a>00317 <span class="comment">     * Fire a generate event.</span>
<a name="l00318"></a>00318 <span class="comment">     * </span>
<a name="l00319"></a>00319 <span class="comment">     * @param ge generate event to fire</span>
<a name="l00320"></a>00320 <span class="comment">     */</span>
<a name="l00321"></a>00321     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00322"></a>00322     fireGenerateEvent(<span class="keyword">const</span> GenerateEvent&amp;  ge) = 0;
<a name="l00323"></a>00323 <span class="comment"></span>
<a name="l00324"></a>00324 <span class="comment">    /**</span>
<a name="l00325"></a>00325 <span class="comment">     * Fire a trace event.</span>
<a name="l00326"></a>00326 <span class="comment">     * </span>
<a name="l00327"></a>00327 <span class="comment">     * @param te trace event to fire</span>
<a name="l00328"></a>00328 <span class="comment">     */</span>
<a name="l00329"></a>00329     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00330"></a>00330     fireTraceEvent(<span class="keyword">const</span> TracerEvent&amp;   te) = 0;
<a name="l00331"></a>00331 <span class="comment"></span>
<a name="l00332"></a>00332 <span class="comment">    /**</span>
<a name="l00333"></a>00333 <span class="comment">     * Fire a selection event.</span>
<a name="l00334"></a>00334 <span class="comment">     * </span>
<a name="l00335"></a>00335 <span class="comment">     * @param se selection event to fire</span>
<a name="l00336"></a>00336 <span class="comment">     */</span>
<a name="l00337"></a>00337     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00338"></a>00338     fireSelectEvent(<span class="keyword">const</span> SelectionEvent&amp;   se) = 0;
<a name="l00339"></a>00339 <span class="comment"></span>
<a name="l00340"></a>00340 <span class="comment">    /**</span>
<a name="l00341"></a>00341 <span class="comment">     * If this is set to true, simple traces of template calls are made.</span>
<a name="l00342"></a>00342 <span class="comment">     *</span>
<a name="l00343"></a>00343 <span class="comment">     * @return true if traces made</span>
<a name="l00344"></a>00344 <span class="comment">     */</span>
<a name="l00345"></a>00345     <span class="keyword">virtual</span> <span class="keywordtype">bool</span>
<a name="l00346"></a>00346     getTraceSelects() <span class="keyword">const</span> = 0;
<a name="l00347"></a>00347 <span class="comment"></span>
<a name="l00348"></a>00348 <span class="comment">    /**</span>
<a name="l00349"></a>00349 <span class="comment">     * Compose a diagnostic trace of the current selection</span>
<a name="l00350"></a>00350 <span class="comment">     *</span>
<a name="l00351"></a>00351 <span class="comment">     * @param executionContext The current execution context</span>
<a name="l00352"></a>00352 <span class="comment">     * @param theStylesheetElement The executing stylesheet element</span>
<a name="l00353"></a>00353 <span class="comment">     * @param nl The list of selected nodes</span>
<a name="l00354"></a>00354 <span class="comment">     * @param xpath A pointer to the XPath which generated the list of nodes, if any.</span>
<a name="l00355"></a>00355 <span class="comment">     */</span>
<a name="l00356"></a>00356     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00357"></a>00357     traceSelect(
<a name="l00358"></a>00358             StylesheetExecutionContext&amp;     executionContext,
<a name="l00359"></a>00359             <span class="keyword">const</span> ElemTemplateElement&amp;      theStylesheetElement,
<a name="l00360"></a>00360             <span class="keyword">const</span> NodeRefListBase&amp;          nl,
<a name="l00361"></a>00361             <span class="keyword">const</span> XPath*                    xpath) <span class="keyword">const</span> = 0;
<a name="l00362"></a>00362 <span class="comment"></span>
<a name="l00363"></a>00363 <span class="comment">    /**</span>
<a name="l00364"></a>00364 <span class="comment">     * If the quietConflictWarnings property is set to </span>
<a name="l00365"></a>00365 <span class="comment">     * true, warnings about pattern conflicts won&#39;t be </span>
<a name="l00366"></a>00366 <span class="comment">     * printed to the diagnostics stream.</span>
<a name="l00367"></a>00367 <span class="comment">     * True by default.</span>
<a name="l00368"></a>00368 <span class="comment">     *</span>
<a name="l00369"></a>00369 <span class="comment">     * @param b true if conflict warnings should be suppressed.</span>
<a name="l00370"></a>00370 <span class="comment">     */</span>
<a name="l00371"></a>00371     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00372"></a>00372     setQuietConflictWarnings(<span class="keywordtype">bool</span> b) = 0;
<a name="l00373"></a>00373 <span class="comment"></span>
<a name="l00374"></a>00374 <span class="comment">    /**</span>
<a name="l00375"></a>00375 <span class="comment">     * If this is set, diagnostics will be </span>
<a name="l00376"></a>00376 <span class="comment">     * written to the m_diagnosticsPrintWriter stream. If </span>
<a name="l00377"></a>00377 <span class="comment">     * the value is null, then diagnostics will be turned </span>
<a name="l00378"></a>00378 <span class="comment">     * off.</span>
<a name="l00379"></a>00379 <span class="comment">     *</span>
<a name="l00380"></a>00380 <span class="comment">     * @param pw pointer to print writer</span>
<a name="l00381"></a>00381 <span class="comment">     */</span>
<a name="l00382"></a>00382     <span class="keyword">virtual</span> <span class="keywordtype">void</span>
<a name="l00383"></a>00383     setDiagnosticsOutput(PrintWriter* pw) = 0;
<a name="l00384"></a>00384 };
<a name="l00385"></a>00385 
<a name="l00386"></a>00386 
<a name="l00387"></a>00387 
<a name="l00388"></a>00388 XALAN_CPP_NAMESPACE_END
<a name="l00389"></a>00389 
<a name="l00390"></a>00390 
<a name="l00391"></a>00391 
<a name="l00392"></a>00392 <span class="preprocessor">#endif  // XALAN_XSLTPROCESSOR_HEADER_GUARD</span>
</pre></div></div>
</div>
<p align="center"><a href="graph_legend.html">Interpreting class diagrams</a></p>
<p><font color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><a href="http://www.doxygen.org/">Doxygen</a> and 
<a href="http://www.graphviz.org/">GraphViz</a> are 
used to generate this API documentation from the Xalan-C header files.</i></font></p>

<table border="0" cellpadding="0" cellspacing="0" width="80%">
 <tr>
  <td width="80%" valign="top">
	<p align="center"><b>Xalan-C++ XSLT Processor Version 1.11</b><br/>
	Copyright &copy; 1999-2012 The Apache Software Foundation.<br/>
	All Rights Reserved.</p>
  </td>
 </tr>
 <tr>
  <td width="100%">
	<p align="center"><img src="asf_logo_wide.gif" width="268" height="25" align="bottom" border="0" alt="Apache Logo">
  </td>
 </tr>
</table>
</body>
</html>
