<!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>XalanCAPI.h</h1>  </div>
</div>
<div class="contents">
<a href="XalanCAPI_8h.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 <span class="preprocessor">#if !defined(XALAN_CAPI_HEADER_GUARD_1357924680)</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define XALAN_CAPI_HEADER_GUARD_1357924680</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;<a class="code" href="XalanTransformerDefinitions_8hpp.html">xalanc/XalanTransformer/XalanTransformerDefinitions.hpp</a>&gt;</span>
<a name="l00024"></a>00024 
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="comment"></span>
<a name="l00027"></a>00027 <span class="comment">/**</span>
<a name="l00028"></a>00028 <span class="comment"> * This is a simple C interface for the class XalanTransformer. It&#39;s </span>
<a name="l00029"></a>00029 <span class="comment"> * the user&#39;s responsibility to call XalanInitialize() before making</span>
<a name="l00030"></a>00030 <span class="comment"> * any other API calls, and to call XalanTerminate() when finished</span>
<a name="l00031"></a>00031 <span class="comment"> * with the API.</span>
<a name="l00032"></a>00032 <span class="comment"> *</span>
<a name="l00033"></a>00033 <span class="comment"> * After calling XalanTransformToData or XalanTransformToDataCSS, the user   </span>
<a name="l00034"></a>00034 <span class="comment"> * should call XalanFreeData to release the memory allocated by that </span>
<a name="l00035"></a>00035 <span class="comment"> * operation.</span>
<a name="l00036"></a>00036 <span class="comment"> */</span>
<a name="l00037"></a>00037 <span class="preprocessor">#if defined(__cplusplus)</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span>
<a name="l00039"></a>00039 {
<a name="l00040"></a>00040 <span class="preprocessor">#endif</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="comment"></span>
<a name="l00042"></a>00042 <span class="comment">    /**</span>
<a name="l00043"></a>00043 <span class="comment">     * Handle used to store the address of XalanTransformer instance.</span>
<a name="l00044"></a>00044 <span class="comment">     */</span>
<a name="l00045"></a><a class="code" href="XalanCAPI_8h.html#a6424447ecce5f073d80d0ace8d02de62">00045</a>     <span class="keyword">typedef</span> <span class="keywordtype">void</span>*           XalanHandle;
<a name="l00046"></a>00046 <span class="comment"></span>
<a name="l00047"></a>00047 <span class="comment">    /**</span>
<a name="l00048"></a>00048 <span class="comment">     * Handle used to store the address of Compiled Stylesheet instance.</span>
<a name="l00049"></a>00049 <span class="comment">     */</span>
<a name="l00050"></a><a class="code" href="XalanCAPI_8h.html#a367a66f86fbd6d3daddc00301f464826">00050</a>     <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="keywordtype">void</span>*     XalanCSSHandle;
<a name="l00051"></a>00051 <span class="comment"></span>
<a name="l00052"></a>00052 <span class="comment">    /**</span>
<a name="l00053"></a>00053 <span class="comment">     * Handle used to store the address of Parsed Source instance.</span>
<a name="l00054"></a>00054 <span class="comment">     */</span>
<a name="l00055"></a><a class="code" href="XalanCAPI_8h.html#a4ca803a3e0e455959507c331cac963be">00055</a>     <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="keywordtype">void</span>*     XalanPSHandle;
<a name="l00056"></a>00056 <span class="comment"></span>
<a name="l00057"></a>00057 <span class="comment">    /**</span>
<a name="l00058"></a>00058 <span class="comment">     * This is a typedef to work around limitations with</span>
<a name="l00059"></a>00059 <span class="comment">     * the XALAN_TRANSFORMER_EXPORT_FUNCTION macro.</span>
<a name="l00060"></a>00060 <span class="comment">     */</span>
<a name="l00061"></a><a class="code" href="XalanCAPI_8h.html#a75c525e2f83732b3dab062d9a733c112">00061</a>     <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="keywordtype">char</span>*     XalanCCharPtr;
<a name="l00062"></a>00062 <span class="comment"></span>
<a name="l00063"></a>00063 <span class="comment">    /**</span>
<a name="l00064"></a>00064 <span class="comment">     * This is a typedef for characters encoded in UTF-16.</span>
<a name="l00065"></a>00065 <span class="comment">     */</span>
<a name="l00066"></a><a class="code" href="XalanCAPI_8h.html#a90a51ed8db9b99c8edfcf14f2ccd9cc8">00066</a>     <span class="keyword">typedef</span> XMLCh           XalanUTF16Char;
<a name="l00067"></a>00067 <span class="comment"></span>
<a name="l00068"></a>00068 <span class="comment">    /**</span>
<a name="l00069"></a>00069 <span class="comment">     * Initialize Xerces and Xalan.</span>
<a name="l00070"></a>00070 <span class="comment">     *</span>
<a name="l00071"></a>00071 <span class="comment">     * Should be called only once per process before making</span>
<a name="l00072"></a>00072 <span class="comment">     * any other API calls.</span>
<a name="l00073"></a>00073 <span class="comment">     *</span>
<a name="l00074"></a>00074 <span class="comment">     * @return 0 if successful, -1 if initialization fails.</span>
<a name="l00075"></a>00075 <span class="comment">     */</span>
<a name="l00076"></a>00076     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00077"></a>00077 <span class="preprocessor">#if defined(__cplusplus)</span>
<a name="l00078"></a>00078 <span class="preprocessor"></span>    <a class="code" href="XalanCAPI_8h.html#ab76ae2cf99f71186eedd9013065de0f2" title="Initialize Xerces and Xalan.">XalanInitialize</a>();
<a name="l00079"></a>00079 <span class="preprocessor">#else</span>
<a name="l00080"></a>00080 <span class="preprocessor"></span>    <a class="code" href="XalanCAPI_8h.html#ab76ae2cf99f71186eedd9013065de0f2" title="Initialize Xerces and Xalan.">XalanInitialize</a>(<span class="keywordtype">void</span>);
<a name="l00081"></a>00081 <span class="preprocessor">#endif</span>
<a name="l00082"></a>00082 <span class="preprocessor"></span><span class="comment"></span>
<a name="l00083"></a>00083 <span class="comment">    /**</span>
<a name="l00084"></a>00084 <span class="comment">     * Terminate Xalan and Xerces.</span>
<a name="l00085"></a>00085 <span class="comment">     *</span>
<a name="l00086"></a>00086 <span class="comment">     * Should be called only once per process after deleting all</span>
<a name="l00087"></a>00087 <span class="comment">     * instances of XalanTransformer.</span>
<a name="l00088"></a>00088 <span class="comment">     *</span>
<a name="l00089"></a>00089 <span class="comment">     * Once a process has called this function, it cannot use the</span>
<a name="l00090"></a>00090 <span class="comment">     * API until another call to XalanInitialize has been made.</span>
<a name="l00091"></a>00091 <span class="comment">     * </span>
<a name="l00092"></a>00092 <span class="comment">     * Optionally, if the ICU has been integrated, this will</span>
<a name="l00093"></a>00093 <span class="comment">     * call the ICU clean up function.  This must only be done</span>
<a name="l00094"></a>00094 <span class="comment">     * if the ICU will no longer be used by the process, since</span>
<a name="l00095"></a>00095 <span class="comment">     * the ICU will no longer be in a usable state.  See the</span>
<a name="l00096"></a>00096 <span class="comment">     * ICU documentation for more details.</span>
<a name="l00097"></a>00097 <span class="comment">     *</span>
<a name="l00098"></a>00098 <span class="comment">     * This is handy when using leak-detection software, as all</span>
<a name="l00099"></a>00099 <span class="comment">     * static data allocated by Xalan (and optionally, the ICU)</span>
<a name="l00100"></a>00100 <span class="comment">     * will be freed.</span>
<a name="l00101"></a>00101 <span class="comment">     *</span>
<a name="l00102"></a>00102 <span class="comment">     * @param fCleanUpICU If true, call the ICU clean up function.</span>
<a name="l00103"></a>00103 <span class="comment">     */</span>
<a name="l00104"></a>00104     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00105"></a>00105     <a class="code" href="XalanCAPI_8h.html#aa0260637cdabb76203273d0e399263e2" title="Terminate Xalan and Xerces.">XalanTerminate</a>(<span class="keywordtype">int</span>  fCleanUpICU);
<a name="l00106"></a>00106 <span class="comment"></span>
<a name="l00107"></a>00107 <span class="comment">    /**</span>
<a name="l00108"></a>00108 <span class="comment">     * Create a XalanTransformer instance.</span>
<a name="l00109"></a>00109 <span class="comment">     *</span>
<a name="l00110"></a>00110 <span class="comment">     * @return  the XalanTransformer handle</span>
<a name="l00111"></a>00111 <span class="comment">     */</span>
<a name="l00112"></a>00112     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(XalanHandle)
<a name="l00113"></a>00113     <a class="code" href="XalanCAPI_8h.html#a1b76c8e523232e033ccb47bffa10623f" title="Create a XalanTransformer instance.">CreateXalanTransformer</a>();
<a name="l00114"></a>00114 
<a name="l00115"></a>00115 <span class="comment"></span>
<a name="l00116"></a>00116 <span class="comment">    /**</span>
<a name="l00117"></a>00117 <span class="comment">     * Delete a XalanTransformer instance.</span>
<a name="l00118"></a>00118 <span class="comment">     *</span>
<a name="l00119"></a>00119 <span class="comment">     * @param theXalanHandle The XalanTransformer to destroy.</span>
<a name="l00120"></a>00120 <span class="comment">     */</span>
<a name="l00121"></a>00121     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00122"></a>00122     <a class="code" href="XalanCAPI_8h.html#a56612158eac82a77c456922ed42e29d5" title="Delete a XalanTransformer instance.">DeleteXalanTransformer</a>(XalanHandle  theXalanHandle);
<a name="l00123"></a>00123 <span class="comment"></span>
<a name="l00124"></a>00124 <span class="comment">    /**</span>
<a name="l00125"></a>00125 <span class="comment">     * Transform the XML source tree to the given result file.</span>
<a name="l00126"></a>00126 <span class="comment">     * The processor will apply the stylesheet file to the input</span>
<a name="l00127"></a>00127 <span class="comment">     * file and write the transformation result to a new output file.</span>
<a name="l00128"></a>00128 <span class="comment">     *</span>
<a name="l00129"></a>00129 <span class="comment">     * @param theXMLFileName    The file name of the XML document.</span>
<a name="l00130"></a>00130 <span class="comment">     * @param theXSLFileName    The file name of the stylesheet XML document.</span>
<a name="l00131"></a>00131 <span class="comment">     * @param theOutFileName    The file name for the output.</span>
<a name="l00132"></a>00132 <span class="comment">     * @param theXalanHandle    The handle of a XalanTransformer instance.</span>
<a name="l00133"></a>00133 <span class="comment">     * @return  0 for success</span>
<a name="l00134"></a>00134 <span class="comment">     */</span>
<a name="l00135"></a>00135     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00136"></a>00136     <a class="code" href="XalanCAPI_8h.html#a7c4c4cb77cd7ea68b460d525b4d06dff" title="Transform the XML source tree to the given result file.">XalanTransformToFile</a>(
<a name="l00137"></a>00137                 const <span class="keywordtype">char</span>*     theXMLFileName,
<a name="l00138"></a>00138                 const <span class="keywordtype">char</span>*     theXSLFileName,
<a name="l00139"></a>00139                 const <span class="keywordtype">char</span>*     theOutFileName,
<a name="l00140"></a>00140                 XalanHandle     theXalanHandle);
<a name="l00141"></a>00141 <span class="comment"></span>
<a name="l00142"></a>00142 <span class="comment">    /**</span>
<a name="l00143"></a>00143 <span class="comment">     * Transform the XML source tree to the given result file.</span>
<a name="l00144"></a>00144 <span class="comment">     * The processor will apply the compiled stylesheet to the input</span>
<a name="l00145"></a>00145 <span class="comment">     * file and write the transformation result to a new output file.</span>
<a name="l00146"></a>00146 <span class="comment">     *</span>
<a name="l00147"></a>00147 <span class="comment">     * @param theParsedSource   The handle of a parsed source</span>
<a name="l00148"></a>00148 <span class="comment">     * @param theCSSHandle      The handle of a compiled stylesheet </span>
<a name="l00149"></a>00149 <span class="comment">     * @param theOutFileName    The file name for the output.</span>
<a name="l00150"></a>00150 <span class="comment">     * @param theXalanHandle    The handle of a XalanTransformer instance.</span>
<a name="l00151"></a>00151 <span class="comment">     * @return  0 for success</span>
<a name="l00152"></a>00152 <span class="comment">     */</span>
<a name="l00153"></a>00153     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00154"></a>00154     <a class="code" href="XalanCAPI_8h.html#ae7c74a729d65a17f904b358ba86d5cab" title="Transform the XML source tree to the given result file.">XalanTransformToFilePrebuilt</a>(
<a name="l00155"></a>00155             XalanPSHandle   theParsedSource,
<a name="l00156"></a>00156             XalanCSSHandle  theCSSHandle,
<a name="l00157"></a>00157             const <span class="keywordtype">char</span>*     theOutFileName,
<a name="l00158"></a>00158             XalanHandle     theXalanHandle);
<a name="l00159"></a>00159 <span class="comment"></span>
<a name="l00160"></a>00160 <span class="comment">    /**</span>
<a name="l00161"></a>00161 <span class="comment">     * Transform the XML source tree to a dynamically allocated buffer.</span>
<a name="l00162"></a>00162 <span class="comment">     * The processor will apply the stylesheet file to the input file</span>
<a name="l00163"></a>00163 <span class="comment">     * and assign the address of the dynamically allocated result to a</span>
<a name="l00164"></a>00164 <span class="comment">     * user-supplied pointer. The user must call XalanFreeData with this</span>
<a name="l00165"></a>00165 <span class="comment">     * pointer to free the memory.</span>
<a name="l00166"></a>00166 <span class="comment">     *</span>
<a name="l00167"></a>00167 <span class="comment">     * @param theXMLFileName    The file name of the XML document.</span>
<a name="l00168"></a>00168 <span class="comment">     * @param theXSLFileName    The file name of the stylesheet XML document.</span>
<a name="l00169"></a>00169 <span class="comment">     * @param theOutput         a pointer to a char*</span>
<a name="l00170"></a>00170 <span class="comment">     * @param theXalanHandle    handle of XalanTransformer instance.</span>
<a name="l00171"></a>00171 <span class="comment">     * @return  0 for success</span>
<a name="l00172"></a>00172 <span class="comment">     */</span>
<a name="l00173"></a>00173     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00174"></a>00174     <a class="code" href="XalanCAPI_8h.html#ad2cf845c20c6b40ee1d558314a81de32" title="Transform the XML source tree to a dynamically allocated buffer.">XalanTransformToData</a>(
<a name="l00175"></a>00175             const <span class="keywordtype">char</span>*     theXMLFileName,
<a name="l00176"></a>00176             const <span class="keywordtype">char</span>*     theXSLFileName,
<a name="l00177"></a>00177             <span class="keywordtype">char</span>**          theOutput,
<a name="l00178"></a>00178             XalanHandle     theXalanHandle);
<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">     * Transform the XML source tree to a dynamically-allocated buffer.</span>
<a name="l00182"></a>00182 <span class="comment">     * The processor will apply the compiled stylesheet to the input file</span>
<a name="l00183"></a>00183 <span class="comment">     * and assign the address of the dynamically allocated result to a </span>
<a name="l00184"></a>00184 <span class="comment">     * user supplied pointer. The user must call XalanFreeData with this </span>
<a name="l00185"></a>00185 <span class="comment">     * pointer to free the memory.</span>
<a name="l00186"></a>00186 <span class="comment">     *</span>
<a name="l00187"></a>00187 <span class="comment">     * @param theParsedSource   The handle of a parsed source</span>
<a name="l00188"></a>00188 <span class="comment">     * @param theCSSHandle      The handle of compiled stylesheet</span>
<a name="l00189"></a>00189 <span class="comment">     * @param theOutput         a pointer to a char*</span>
<a name="l00190"></a>00190 <span class="comment">     * @param theXalanHandle    handle of XalanTransformer instance.</span>
<a name="l00191"></a>00191 <span class="comment">     * @return  0 for success</span>
<a name="l00192"></a>00192 <span class="comment">     */</span>
<a name="l00193"></a>00193     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00194"></a>00194     <a class="code" href="XalanCAPI_8h.html#af6d4cf26bae0157e8db62093e738c153" title="Transform the XML source tree to a dynamically-allocated buffer.">XalanTransformToDataPrebuilt</a>(
<a name="l00195"></a>00195                 XalanPSHandle   theParsedSource,
<a name="l00196"></a>00196                 XalanCSSHandle  theCSSHandle,
<a name="l00197"></a>00197                 <span class="keywordtype">char</span>**          theOutput,
<a name="l00198"></a>00198                 XalanHandle     theXalanHandle);
<a name="l00199"></a>00199 <span class="comment"></span>
<a name="l00200"></a>00200 <span class="comment">    /**</span>
<a name="l00201"></a>00201 <span class="comment">     * Free memory allocated as a result of calling</span>
<a name="l00202"></a>00202 <span class="comment">     * XalanTransformToData.</span>
<a name="l00203"></a>00203 <span class="comment">     *</span>
<a name="l00204"></a>00204 <span class="comment">     * @param theData The address of character data.</span>
<a name="l00205"></a>00205 <span class="comment">     */</span>
<a name="l00206"></a>00206     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00207"></a>00207     <a class="code" href="XalanCAPI_8h.html#a95ef1a205f372f95d320f53739417653" title="Free memory allocated as a result of calling XalanTransformToData.">XalanFreeData</a>(<span class="keywordtype">char</span>*     theData);
<a name="l00208"></a>00208 <span class="comment"></span>
<a name="l00209"></a>00209 <span class="comment">    /**</span>
<a name="l00210"></a>00210 <span class="comment">     * Transform the XML source tree to a callback function.</span>
<a name="l00211"></a>00211 <span class="comment">     * The processor will apply the stylesheet file to the input file</span>
<a name="l00212"></a>00212 <span class="comment">     * and allocate the transformation result to a callback function</span>
<a name="l00213"></a>00213 <span class="comment">     * in pre-allocated blocks. Once the transformation is complete,</span>
<a name="l00214"></a>00214 <span class="comment">     * a second callback, to flush the buffer, is called. You can pass</span>
<a name="l00215"></a>00215 <span class="comment">     * in NULL if you do not wish to implement a flush callback. Xalan</span>
<a name="l00216"></a>00216 <span class="comment">     * will release any memory allocated upon termination, and data passed</span>
<a name="l00217"></a>00217 <span class="comment">     * to the callback is not guaranteed to be null terminated.</span>
<a name="l00218"></a>00218 <span class="comment">     *</span>
<a name="l00219"></a>00219 <span class="comment">     * See XalanTransformerDefinitions.hpp for more details.</span>
<a name="l00220"></a>00220 <span class="comment">     *</span>
<a name="l00221"></a>00221 <span class="comment">     * @param theXMLFileName    The file name of XML input source</span>
<a name="l00222"></a>00222 <span class="comment">     * @param theXSLFileName    The file name of stylesheet source</span>
<a name="l00223"></a>00223 <span class="comment">     * @param theXalanHandle    The handle of a XalanTransformer instance.</span>
<a name="l00224"></a>00224 <span class="comment">     * @param theOutputHandle   A void pointer passed through to callback.</span>
<a name="l00225"></a>00225 <span class="comment">     * @param theOutputHandler  A user-defined callback function pointer.</span>
<a name="l00226"></a>00226 <span class="comment">     * @param theFlushHandler   A user-defined callback function pointer, which can be null.</span>
<a name="l00227"></a>00227 <span class="comment">     * @return  0 for success</span>
<a name="l00228"></a>00228 <span class="comment">     */</span>
<a name="l00229"></a>00229     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>) 
<a name="l00230"></a>00230     <a class="code" href="XalanCAPI_8h.html#a933a75a9afd7acd0a2b214f32e456e1f" title="Transform the XML source tree to a callback function.">XalanTransformToHandler</a>(
<a name="l00231"></a>00231                 const <span class="keywordtype">char</span>*             theXMLFileName,
<a name="l00232"></a>00232                 const <span class="keywordtype">char</span>*             theXSLFileName,
<a name="l00233"></a>00233                 XalanHandle             theXalanHandle,
<a name="l00234"></a>00234                 <span class="keywordtype">void</span>*                   theOutputHandle,
<a name="l00235"></a>00235                 <a class="code" href="XalanTransformerDefinitions_8hpp.html#a1dc959aba772c6560c207640b1078029" title="Callback function passed to the XalanTransformer APIs.">XalanOutputHandlerType</a>  theOutputHandler,
<a name="l00236"></a>00236                 <a class="code" href="XalanTransformerDefinitions_8hpp.html#af9c91954b5abd9dde361ad9631c12295" title="Callback function passed to the XalanTransformer APIs.">XalanFlushHandlerType</a>   theFlushHandler);
<a name="l00237"></a>00237 <span class="comment"></span>
<a name="l00238"></a>00238 <span class="comment">    /**</span>
<a name="l00239"></a>00239 <span class="comment">     * Transform the XML source tree to a callback function.</span>
<a name="l00240"></a>00240 <span class="comment">     * The processor will apply the compiled stylesheet to the input file</span>
<a name="l00241"></a>00241 <span class="comment">     * and allocate the transformation result to a callback function</span>
<a name="l00242"></a>00242 <span class="comment">     * in pre-allocated blocks. Once the transformation is complete,</span>
<a name="l00243"></a>00243 <span class="comment">     * a second callback, to flush the buffer, is called. You can pass</span>
<a name="l00244"></a>00244 <span class="comment">     * in NULL if you do not wish to implement a flush callback. Xalan</span>
<a name="l00245"></a>00245 <span class="comment">     * will release any memory allocated upon termination, and data passed</span>
<a name="l00246"></a>00246 <span class="comment">     * to the callback is not guaranteed to be null terminated.</span>
<a name="l00247"></a>00247 <span class="comment">     * </span>
<a name="l00248"></a>00248 <span class="comment">     * See XalanTransformerDefinitions.hpp for more details.</span>
<a name="l00249"></a>00249 <span class="comment">     *</span>
<a name="l00250"></a>00250 <span class="comment">     * @param thePSHandle       The handle of parsed source</span>
<a name="l00251"></a>00251 <span class="comment">     * @param theCSSHandle      The handle of compiled stylesheet </span>
<a name="l00252"></a>00252 <span class="comment">     * @param theXalanHandle    The handle of XalanTransformer instance.</span>
<a name="l00253"></a>00253 <span class="comment">     * @param theOutputHandle   A void pointer passed through to callback.</span>
<a name="l00254"></a>00254 <span class="comment">     * @param theOutputHandler  A user-defined callback function pointer.</span>
<a name="l00255"></a>00255 <span class="comment">     * @param theFlushHandler   A user-defined callback function pointer, which can be null.</span>
<a name="l00256"></a>00256 <span class="comment">     * @return  0 for success </span>
<a name="l00257"></a>00257 <span class="comment">     */</span>
<a name="l00258"></a>00258     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00259"></a>00259     <a class="code" href="XalanCAPI_8h.html#ac482ee89db18e04988cf4bab98e810a2" title="Transform the XML source tree to a callback function.">XalanTransformToHandlerPrebuilt</a>(
<a name="l00260"></a>00260                 XalanPSHandle           thePSHandle,
<a name="l00261"></a>00261                 XalanCSSHandle          theCSSHandle,
<a name="l00262"></a>00262                 XalanHandle             theXalanHandle,
<a name="l00263"></a>00263                 <span class="keywordtype">void</span>*                   theOutputHandle,
<a name="l00264"></a>00264                 <a class="code" href="XalanTransformerDefinitions_8hpp.html#a1dc959aba772c6560c207640b1078029" title="Callback function passed to the XalanTransformer APIs.">XalanOutputHandlerType</a>  theOutputHandler,
<a name="l00265"></a>00265                 <a class="code" href="XalanTransformerDefinitions_8hpp.html#af9c91954b5abd9dde361ad9631c12295" title="Callback function passed to the XalanTransformer APIs.">XalanFlushHandlerType</a>   theFlushHandler);
<a name="l00266"></a>00266 <span class="comment"></span>
<a name="l00267"></a>00267 <span class="comment">    /**</span>
<a name="l00268"></a>00268 <span class="comment">     * Creates a compiled stylesheet.</span>
<a name="l00269"></a>00269 <span class="comment">     *</span>
<a name="l00270"></a>00270 <span class="comment">     * @param theXSLFileName    The file name of stylesheet source</span>
<a name="l00271"></a>00271 <span class="comment">     * @param theXalanHandle    The handle of XalanTransformer instance.</span>
<a name="l00272"></a>00272 <span class="comment">     * @param theCSSHandle      a pointer to a XalanCSSHandle</span>
<a name="l00273"></a>00273 <span class="comment">     * @return 0 for success.</span>
<a name="l00274"></a>00274 <span class="comment">     */</span>
<a name="l00275"></a>00275     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00276"></a>00276     <a class="code" href="XalanCAPI_8h.html#a051cb11b9652d45700d46a07f2dfeb51" title="Creates a compiled stylesheet.">XalanCompileStylesheet</a>(
<a name="l00277"></a>00277             const <span class="keywordtype">char</span>*         theXSLFileName,
<a name="l00278"></a>00278             XalanHandle         theXalanHandle,
<a name="l00279"></a>00279             XalanCSSHandle*     theCSSHandle);
<a name="l00280"></a>00280 <span class="comment"></span>
<a name="l00281"></a>00281 <span class="comment">    /**</span>
<a name="l00282"></a>00282 <span class="comment">     * Creates a compiled stylesheet.</span>
<a name="l00283"></a>00283 <span class="comment">     *</span>
<a name="l00284"></a>00284 <span class="comment">     * @param theXSLFileName The stream that contains the stylesheet xml</span>
<a name="l00285"></a>00285 <span class="comment">     * @param theXSLStreamLength The length of the stream.</span>
<a name="l00286"></a>00286 <span class="comment">     * @param theXalanHandle handle of XalanTransformer instance.</span>
<a name="l00287"></a>00287 <span class="comment">     * @param theCSSHandle a pointer to a XalanCSSHandle</span>
<a name="l00288"></a>00288 <span class="comment">     * @return 0 for success.</span>
<a name="l00289"></a>00289 <span class="comment">     */</span>
<a name="l00290"></a>00290     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00291"></a>00291     <a class="code" href="XalanCAPI_8h.html#a08bd3449f7478e43dd51583a3a772366" title="Creates a compiled stylesheet.">XalanCompileStylesheetFromStream</a>(
<a name="l00292"></a>00292             const <span class="keywordtype">char</span>*         theXSLStream,
<a name="l00293"></a>00293             <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>       theXSLStreamLength,
<a name="l00294"></a>00294             XalanHandle         theXalanHandle,
<a name="l00295"></a>00295             XalanCSSHandle*     theCSSHandle);
<a name="l00296"></a>00296 <span class="comment"></span>
<a name="l00297"></a>00297 <span class="comment">    /**</span>
<a name="l00298"></a>00298 <span class="comment">     * Destroys a compiled stylesheet.</span>
<a name="l00299"></a>00299 <span class="comment">     *</span>
<a name="l00300"></a>00300 <span class="comment">     * @param theCSSHandle      The handle of the compiled stylesheet.</span>
<a name="l00301"></a>00301 <span class="comment">     * @param theXalanHandle    The handle of XalanTransformer instance.</span>
<a name="l00302"></a>00302 <span class="comment">     * @return 0 for success</span>
<a name="l00303"></a>00303 <span class="comment">     */</span>
<a name="l00304"></a>00304     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00305"></a>00305     <a class="code" href="XalanCAPI_8h.html#a98dfe2fb92858c5e2890bad39ead5846" title="Destroys a compiled stylesheet.">XalanDestroyCompiledStylesheet</a>(
<a name="l00306"></a>00306             XalanCSSHandle  theCSSHandle,
<a name="l00307"></a>00307             XalanHandle     theXalanHandle);
<a name="l00308"></a>00308 <span class="comment"></span>
<a name="l00309"></a>00309 <span class="comment">    /**</span>
<a name="l00310"></a>00310 <span class="comment">     * Parse source document.</span>
<a name="l00311"></a>00311 <span class="comment">     *</span>
<a name="l00312"></a>00312 <span class="comment">     * @param theXMLFileName The name of the file containing the source document</span>
<a name="l00313"></a>00313 <span class="comment">     * @param theXalanHandle The handle of XalanTransformer instance.</span>
<a name="l00314"></a>00314 <span class="comment">     * @param thePSHandle A pointer to a XalanPSHandle</span>
<a name="l00315"></a>00315 <span class="comment">     * @return 0 for success.</span>
<a name="l00316"></a>00316 <span class="comment">     */</span> 
<a name="l00317"></a>00317     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00318"></a>00318     <a class="code" href="XalanCAPI_8h.html#a9a376f062779b8e01bbaad16eaf826b4" title="Parse source document.">XalanParseSource</a>(
<a name="l00319"></a>00319             const <span class="keywordtype">char</span>*     theXMLFileName,
<a name="l00320"></a>00320             XalanHandle     theXalanHandle,
<a name="l00321"></a>00321             XalanPSHandle*  thePSHandle);
<a name="l00322"></a>00322 <span class="comment"></span>
<a name="l00323"></a>00323 <span class="comment">    /**</span>
<a name="l00324"></a>00324 <span class="comment">     * Parse source document from a stream.</span>
<a name="l00325"></a>00325 <span class="comment">     *</span>
<a name="l00326"></a>00326 <span class="comment">     * @param theXMLStream The stream that contains the source xml</span>
<a name="l00327"></a>00327 <span class="comment">     * @param theXSLStreamLength The length of the stream</span>
<a name="l00328"></a>00328 <span class="comment">     * @param theXalanHandle The handle of XalanTransformer instance</span>
<a name="l00329"></a>00329 <span class="comment">     * @param thePSHandle A pointer to a XalanPSHandle</span>
<a name="l00330"></a>00330 <span class="comment">     * @return 0 for success.</span>
<a name="l00331"></a>00331 <span class="comment">     */</span> 
<a name="l00332"></a>00332     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00333"></a>00333     <a class="code" href="XalanCAPI_8h.html#a921158b4c679e2e5c97265501a6c17ad" title="Parse source document from a stream.">XalanParseSourceFromStream</a>(
<a name="l00334"></a>00334             const <span class="keywordtype">char</span>*     theXMLStream,
<a name="l00335"></a>00335             <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>   theXMLStreamLength,
<a name="l00336"></a>00336             XalanHandle     theXalanHandle,
<a name="l00337"></a>00337             XalanPSHandle*  thePSHandle);
<a name="l00338"></a>00338 <span class="comment"></span>
<a name="l00339"></a>00339 <span class="comment">    /**</span>
<a name="l00340"></a>00340 <span class="comment">     * Destroys a parsed source.</span>
<a name="l00341"></a>00341 <span class="comment">     * a file name, a stream or a root node.</span>
<a name="l00342"></a>00342 <span class="comment">     *</span>
<a name="l00343"></a>00343 <span class="comment">     * @param thePSHandle       The handle of parsed source</span>
<a name="l00344"></a>00344 <span class="comment">     * @param theXalanHandle    The handle of XalanTransformer instance.</span>
<a name="l00345"></a>00345 <span class="comment">     * @return 0 for success</span>
<a name="l00346"></a>00346 <span class="comment">     */</span>
<a name="l00347"></a>00347     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">int</span>)
<a name="l00348"></a>00348     <a class="code" href="XalanCAPI_8h.html#aae16c90c96046e7cd69a884a1c2afed4" title="Destroys a parsed source.">XalanDestroyParsedSource</a>(
<a name="l00349"></a>00349             XalanPSHandle   thePSHandle,
<a name="l00350"></a>00350             XalanHandle     theXalanHandle);
<a name="l00351"></a>00351 <span class="comment"></span>
<a name="l00352"></a>00352 <span class="comment">    /**</span>
<a name="l00353"></a>00353 <span class="comment">     * Set a top-level stylesheet parameter.  This value can be evaluated via</span>
<a name="l00354"></a>00354 <span class="comment">     * xsl:param-variable.</span>
<a name="l00355"></a>00355 <span class="comment">     *</span>
<a name="l00356"></a>00356 <span class="comment">     * @param key               The name of the param</span>
<a name="l00357"></a>00357 <span class="comment">     * @param expression        The expression that will be evaluated</span>
<a name="l00358"></a>00358 <span class="comment">     * @param theXalanHandle    The handle of XalanTransformer instance.</span>
<a name="l00359"></a>00359 <span class="comment">     */</span>
<a name="l00360"></a>00360     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00361"></a>00361     <a class="code" href="XalanCAPI_8h.html#af076f4ff44907f720bbfe859ae763271" title="Set a top-level stylesheet parameter.">XalanSetStylesheetParam</a>(
<a name="l00362"></a>00362                 const <span class="keywordtype">char</span>*     key,
<a name="l00363"></a>00363                 const <span class="keywordtype">char</span>*     expression,
<a name="l00364"></a>00364                 XalanHandle     theXalanHandle);
<a name="l00365"></a>00365 <span class="comment"></span>
<a name="l00366"></a>00366 <span class="comment">    /**</span>
<a name="l00367"></a>00367 <span class="comment">     * Set a top-level stylesheet parameter.  This value can be evaluated via</span>
<a name="l00368"></a>00368 <span class="comment">     * xsl:param-variable.  The key and expression parameters must be</span>
<a name="l00369"></a>00369 <span class="comment">     * encoded in UTF-16.</span>
<a name="l00370"></a>00370 <span class="comment">     *</span>
<a name="l00371"></a>00371 <span class="comment">     * @param key name of the param</span>
<a name="l00372"></a>00372 <span class="comment">     * @param expression expression that will be evaluated</span>
<a name="l00373"></a>00373 <span class="comment">     * @param theXalanHandle    handle of XalanTransformer instance.</span>
<a name="l00374"></a>00374 <span class="comment">     */</span>
<a name="l00375"></a>00375     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00376"></a>00376     <a class="code" href="XalanCAPI_8h.html#aa60ee15216415715840b74bd6d5e6063" title="Set a top-level stylesheet parameter.">XalanSetStylesheetParamUTF</a>(
<a name="l00377"></a>00377                 const XalanUTF16Char*   key,
<a name="l00378"></a>00378                 const XalanUTF16Char*   expression,
<a name="l00379"></a>00379                 XalanHandle             theXalanHandle);
<a name="l00380"></a>00380 
<a name="l00381"></a>00381 <span class="comment"></span>
<a name="l00382"></a>00382 <span class="comment">    /**</span>
<a name="l00383"></a>00383 <span class="comment">     * Set a top-level stylesheet nodeset parameter.  This value can be</span>
<a name="l00384"></a>00384 <span class="comment">     * evaluated via xsl:param-variable.  The value is a parsed document.</span>
<a name="l00385"></a>00385 <span class="comment">     *</span>
<a name="l00386"></a>00386 <span class="comment">     * @param key name of the param</span>
<a name="l00387"></a>00387 <span class="comment">     * @param theNodeset a preparsed document</span>
<a name="l00388"></a>00388 <span class="comment">     * @param theXalanHandle  handle of the XalanTransformer instance.</span>
<a name="l00389"></a>00389 <span class="comment">     */</span>
<a name="l00390"></a>00390     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00391"></a>00391     <a class="code" href="XalanCAPI_8h.html#ae8fc1de585cd6e3423436a2b477ac770" title="Set a top-level stylesheet nodeset parameter.">XalanSetStylesheetParamNodeset</a>(
<a name="l00392"></a>00392                 const <span class="keywordtype">char</span>*             key,
<a name="l00393"></a>00393                 XalanPSHandle           theNodeset,
<a name="l00394"></a>00394                 XalanHandle             theXalanHandle);
<a name="l00395"></a>00395 <span class="comment"></span>
<a name="l00396"></a>00396 <span class="comment">    /**</span>
<a name="l00397"></a>00397 <span class="comment">     * Set a top-level stylesheet nodeset parameter.  This value can be</span>
<a name="l00398"></a>00398 <span class="comment">     * evaluated via xsl:param-variable.  The value is a parsed document.</span>
<a name="l00399"></a>00399 <span class="comment">     * The key name is a UTF-16 string.</span>
<a name="l00400"></a>00400 <span class="comment">     *</span>
<a name="l00401"></a>00401 <span class="comment">     * @param key name of the param</span>
<a name="l00402"></a>00402 <span class="comment">     * @param theNodeset a preparsed document</span>
<a name="l00403"></a>00403 <span class="comment">     * @param theXalanHandle  handle of the XalanTransformer instance.</span>
<a name="l00404"></a>00404 <span class="comment">     */</span>
<a name="l00405"></a>00405     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00406"></a>00406     <a class="code" href="XalanCAPI_8h.html#ada229e78cf64b7eec7f52694885d56f9" title="Set a top-level stylesheet nodeset parameter.">XalanSetStylesheetParamUTFNodeset</a>(
<a name="l00407"></a>00407                 const XalanUTF16Char*   key,
<a name="l00408"></a>00408                 XalanPSHandle           theNodeset,
<a name="l00409"></a>00409                 XalanHandle             theXalanHandle);
<a name="l00410"></a>00410         <span class="comment"></span>
<a name="l00411"></a>00411 <span class="comment">    /**</span>
<a name="l00412"></a>00412 <span class="comment">     * Set a top-level stylesheet number parameter.  This value can be</span>
<a name="l00413"></a>00413 <span class="comment">     * evaluated via xsl:param-variable.  The value is a parsed document.</span>
<a name="l00414"></a>00414 <span class="comment">     *</span>
<a name="l00415"></a>00415 <span class="comment">     * @param key name of the param</span>
<a name="l00416"></a>00416 <span class="comment">     * @param theNumber a double floating point number</span>
<a name="l00417"></a>00417 <span class="comment">     * @param theXalanHandle  handle of the XalanTransformer instance.</span>
<a name="l00418"></a>00418 <span class="comment">     */</span>
<a name="l00419"></a>00419     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00420"></a>00420     <a class="code" href="XalanCAPI_8h.html#a787691fad8298a15deae6886cb4793e8" title="Set a top-level stylesheet number parameter.">XalanSetStylesheetParamNumber</a>(
<a name="l00421"></a>00421                 const <span class="keywordtype">char</span>*             key,
<a name="l00422"></a>00422                 <span class="keywordtype">double</span>                  theNumber,
<a name="l00423"></a>00423                 XalanHandle             theXalanHandle);
<a name="l00424"></a>00424 <span class="comment"></span>
<a name="l00425"></a>00425 <span class="comment">    /**</span>
<a name="l00426"></a>00426 <span class="comment">     * Set a top-level stylesheet number parameter.  This value can be</span>
<a name="l00427"></a>00427 <span class="comment">     * evaluated via xsl:param-variable.  The value is a parsed document.</span>
<a name="l00428"></a>00428 <span class="comment">     * The key name is a UTF-16 string.</span>
<a name="l00429"></a>00429 <span class="comment">     *</span>
<a name="l00430"></a>00430 <span class="comment">     * @param key name of the param</span>
<a name="l00431"></a>00431 <span class="comment">     * @param theNumber a double floating point number</span>
<a name="l00432"></a>00432 <span class="comment">     * @param theXalanHandle  handle of the XalanTransformer instance.</span>
<a name="l00433"></a>00433 <span class="comment">     */</span>
<a name="l00434"></a>00434     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00435"></a>00435     <a class="code" href="XalanCAPI_8h.html#a5a5ae13fcb318d75adf17293cf59b066" title="Set a top-level stylesheet number parameter.">XalanSetStylesheetParamUTFNumber</a>(
<a name="l00436"></a>00436                 const XalanUTF16Char*   key,
<a name="l00437"></a>00437                 <span class="keywordtype">double</span>                  theNumber,
<a name="l00438"></a>00438                 XalanHandle             theXalanHandle);
<a name="l00439"></a>00439 <span class="comment"></span>
<a name="l00440"></a>00440 <span class="comment">    /**</span>
<a name="l00441"></a>00441 <span class="comment">     * Clear the top-level stylesheet parameters.  Top-level stylesheet</span>
<a name="l00442"></a>00442 <span class="comment">     * parameters are sticky.  When set, they can be used for multiple</span>
<a name="l00443"></a>00443 <span class="comment">     * transformations. Use the XalanClearStylesheetParams function</span>
<a name="l00444"></a>00444 <span class="comment">     * to clear or reset the top-level stylesheet parameters.</span>
<a name="l00445"></a>00445 <span class="comment">     *</span>
<a name="l00446"></a>00446 <span class="comment">     * @param theXalanHandle  handle of the XalanTransformer instance.</span>
<a name="l00447"></a>00447 <span class="comment">     */</span>
<a name="l00448"></a>00448     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(<span class="keywordtype">void</span>)
<a name="l00449"></a>00449     <a class="code" href="XalanCAPI_8h.html#a36008f4ef30719dc1dff4a6507597674" title="Clear the top-level stylesheet parameters.">XalanClearStylesheetParams</a>(
<a name="l00450"></a>00450                 XalanHandle             theXalanHandle);
<a name="l00451"></a>00451 <span class="comment"></span>
<a name="l00452"></a>00452 <span class="comment">    /**</span>
<a name="l00453"></a>00453 <span class="comment">     * Returns the last error that occurred as a </span>
<a name="l00454"></a>00454 <span class="comment">     * result of calling transform.</span>
<a name="l00455"></a>00455 <span class="comment">     *</span>
<a name="l00456"></a>00456 <span class="comment">     * The signature for following function is really:</span>
<a name="l00457"></a>00457 <span class="comment">     * const char*</span>
<a name="l00458"></a>00458 <span class="comment">     * XalanGetLastError(XalanHandle theXalanHandle) const;</span>
<a name="l00459"></a>00459 <span class="comment">     *</span>
<a name="l00460"></a>00460 <span class="comment">     * @return  error message const character pointer.</span>
<a name="l00461"></a>00461 <span class="comment">     */</span>
<a name="l00462"></a>00462     <a class="code" href="XalanTransformerDefinitions_8hpp.html#a5aa74eeffd2d139d60b0b91fe3ae9318">XALAN_TRANSFORMER_EXPORT_FUNCTION</a>(XalanCCharPtr)
<a name="l00463"></a>00463     <a class="code" href="XalanCAPI_8h.html#ab9ec00bf3fbe6a946e20418a53891755" title="Returns the last error that occurred as a result of calling transform.">XalanGetLastError</a>(XalanHandle   theXalanHandle);
<a name="l00464"></a>00464 
<a name="l00465"></a>00465 <span class="preprocessor">#if defined(__cplusplus)</span>
<a name="l00466"></a>00466 <span class="preprocessor"></span>}
<a name="l00467"></a>00467 <span class="preprocessor">#endif</span>
<a name="l00468"></a>00468 <span class="preprocessor"></span>
<a name="l00469"></a>00469 
<a name="l00470"></a>00470 
<a name="l00471"></a>00471 <span class="preprocessor">#endif  // XALAN_CAPI_HEADER_GUARD_1357924680</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>
