source: NonGTP/Xerces/xerces/doc/html/apiDocs/PlatformUtils_8hpp-source.html @ 358

Revision 358, 35.5 KB checked in by bittner, 19 years ago (diff)

xerces added

Line 
1<HTML><HEAD><SCRIPT language="JavaScript" src="../resources/script.js" type="text/javascript"></SCRIPT><TITLE>PlatformUtils.hpp Source File</TITLE><link href="XercesApi.css" rel="stylesheet" type="text/css"></HEAD><BODY alink="#ff0000" bgcolor="#ffffff" leftmargin="4" link="#0000ff" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0000aa"><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="../resources/logo.gif" vspace="0" width="135"></TD><TD align="left" colspan="4" height="5" valign="top" width="456"><IMG border="0" height="5" hspace="0" src="../resources/line.gif" vspace="0" width="456"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="../resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="4" height="35" valign="top" width="456"><IMG alt="" border="0" height="35" hspace="0" src="../graphics/api-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" height="20" valign="top" width="168"><IMG border="0" height="20" hspace="0" src="../resources/bottom.gif" vspace="0" width="168"></TD><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','../resources/button-xml-hi.gif','../resources/button-xml-lo.gif');" src="../resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','../resources/button-asf-hi.gif','../resources/button-asf-lo.gif');" src="../resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','../resources/button-w3c-hi.gif','../resources/button-w3c-lo.gif');" src="../resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="../resources/join.gif" vspace="0" width="120"><BR>
2  <A href="../../index.html" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="Home" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','../graphics/ext-2-label-2.jpg','../graphics/ext-2-label-3.jpg');" src="../graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
3
4  <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
5
6  <A href="../index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="Readme" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','../graphics/index-label-2.jpg','../graphics/index-label-3.jpg');" src="../graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
7  <A href="../releases.html" onMouseOut="rolloverOff('side-releases');" onMouseOver="rolloverOn('side-releases');"><IMG alt="Release Info" border="0" height="12" hspace="0" name="side-releases" onLoad="rolloverLoad('side-releases','../graphics/releases-label-2.jpg','../graphics/releases-label-3.jpg');" src="../graphics/releases-label-3.jpg" vspace="0" width="120"></A><BR>
8  <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
9  <A href="../install.html" onMouseOut="rolloverOff('side-install');" onMouseOver="rolloverOn('side-install');"><IMG alt="Installation" border="0" height="12" hspace="0" name="side-install" onLoad="rolloverLoad('side-install','../graphics/install-label-2.jpg','../graphics/install-label-3.jpg');" src="../graphics/install-label-3.jpg" vspace="0" width="120"></A><BR>
10  <A href="http://xml.apache.org/dist/xerces-c/" onMouseOut="rolloverOff('side-ext-18');" onMouseOver="rolloverOn('side-ext-18');"><IMG alt="Download" border="0" height="12" hspace="0" name="side-ext-18" onLoad="rolloverLoad('side-ext-18','../graphics/ext-18-label-2.jpg','../graphics/ext-18-label-3.jpg');" src="../graphics/ext-18-label-3.jpg" vspace="0" width="120"></A><BR>
11  <A href="../build.html" onMouseOut="rolloverOff('side-build');" onMouseOver="rolloverOn('side-build');"><IMG alt="Build" border="0" height="12" hspace="0" name="side-build" onLoad="rolloverLoad('side-build','../graphics/build-label-2.jpg','../graphics/build-label-3.jpg');" src="../graphics/build-label-3.jpg" vspace="0" width="120"></A><BR>
12
13  <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
14  <A href="../faqs.html" onMouseOut="rolloverOff('side-faqs');" onMouseOver="rolloverOn('side-faqs');"><IMG alt="FAQs" border="0" height="12" hspace="0" name="side-faqs" onLoad="rolloverLoad('side-faqs','../graphics/faqs-label-2.jpg','../graphics/faqs-label-3.jpg');" src="../graphics/faqs-label-3.jpg" vspace="0" width="120"></A><BR> 
15  <A href="../samples.html" onMouseOut="rolloverOff('side-samples');" onMouseOver="rolloverOn('side-samples');"><IMG alt="Samples" border="0" height="12" hspace="0" name="side-samples" onLoad="rolloverLoad('side-samples','../graphics/samples-label-2.jpg','../graphics/samples-label-3.jpg');" src="../graphics/samples-label-3.jpg" vspace="0" width="120"></A><BR>
16  <A href="../api.html" onMouseOut="rolloverOff('side-api');" onMouseOver="rolloverOn('side-api');"><IMG alt="API Docs" border="0" height="12" hspace="0" name="side-api" onLoad="rolloverLoad('side-api','../graphics/api-label-2.jpg','../graphics/api-label-3.jpg');" src="../graphics/api-label-3.jpg" vspace="0" width="120"></A><BR> 
17
18  <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR> 
19  <A href="../ApacheDOMC++Binding.html" onMouseOut="rolloverOff('side-ext-68');" onMouseOver="rolloverOn('side-ext-68');"><IMG alt="DOM C++ Binding" border="0" height="12" hspace="0" name="side-ext-68" onLoad="rolloverLoad('side-ext-68','../graphics/ext-68-label-2.jpg','../graphics/ext-68-label-3.jpg');" src="../graphics/ext-68-label-3.jpg" vspace="0" width="120"></A><BR>
20
21  <A href="../program.html" onMouseOut="rolloverOff('side-program');" onMouseOver="rolloverOn('side-program');"><IMG alt="Programming" border="0" height="12" hspace="0" name="side-program" onLoad="rolloverLoad('side-program','../graphics/program-label-2.jpg','../graphics/program-label-3.jpg');" src="../graphics/program-label-3.jpg" vspace="0" width="120"></A><BR>
22  <A href="../migrate.html" onMouseOut="rolloverOff('side-migrate');" onMouseOver="rolloverOn('side-migrate');"><IMG alt="Migration Guide" border="0" height="12" hspace="0" name="side-migrate" onLoad="rolloverLoad('side-migrate','../graphics/migrate-label-2.jpg','../graphics/migrate-label-3.jpg');" src="../graphics/migrate-label-3.jpg" vspace="0" width="120"></A><BR>
23
24  <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
25
26  <A href="../feedback.html" onMouseOut="rolloverOff('side-feedback');" onMouseOver="rolloverOn('side-feedback');"><IMG alt="Feedback" border="0" height="12" hspace="0" name="side-feedback" onLoad="rolloverLoad('side-feedback','../graphics/feedback-label-2.jpg','../graphics/feedback-label-3.jpg');" src="../graphics/feedback-label-3.jpg" vspace="0" width="120"></A><BR>
27  <A href="../bug-report.html" onMouseOut="rolloverOff('side-bug-report');" onMouseOver="rolloverOn('side-bug-report');"><IMG alt="Bug-Reporting" border="0" height="12" hspace="0" name="side-bug-report" onLoad="rolloverLoad('side-bug-report','../graphics/bug-report-label-2.jpg','../graphics/bug-report-label-3.jpg');" src="../graphics/bug-report-label-3.jpg" vspace="0" width="120"></A><BR> 
28  <A href="../pdf.html" onMouseOut="rolloverOff('side-pdf');" onMouseOver="rolloverOn('side-pdf');"><IMG alt="PDF Document" border="0" height="12" hspace="0" name="side-pdf" onLoad="rolloverLoad('side-pdf','../graphics/pdf-label-2.jpg','../graphics/pdf-label-3.jpg');" src="../graphics/pdf-label-3.jpg" vspace="0" width="120"></A><BR>
29
30  <IMG border="0" height="6" hspace="0" src="../resources/separator.gif" vspace="0" width="120"><BR>
31
32  <A href="http://xml.apache.org/websrc/cvsweb.cgi/xml-xerces/c/" onMouseOut="rolloverOff('side-ext-100');" onMouseOver="rolloverOn('side-ext-100');"><IMG alt="CVS Repository" border="0" height="12" hspace="0" name="side-ext-100" onLoad="rolloverLoad('side-ext-100','../graphics/ext-100-label-2.jpg','../graphics/ext-100-label-3.jpg');" src="../graphics/ext-100-label-3.jpg" vspace="0" width="120"></A><BR>
33
34  <A href="http://marc.theaimsgroup.com/?l=xerces-c-dev" onMouseOut="rolloverOff('side-ext-102');" onMouseOver="rolloverOn('side-ext-102');"><IMG alt="Mail Archive" border="0" height="12" hspace="0" name="side-ext-102" onLoad="rolloverLoad('side-ext-102','../graphics/ext-102-label-2.jpg','../graphics/ext-102-label-3.jpg');" src="../graphics/ext-102-label-3.jpg" vspace="0" width="120"></A><BR>
35
36
37<IMG border="0" height="14" hspace="0" src="../resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD>
38    <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#FFFFFF" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="../resources/void.gif" vspace="0" width="2"><B>API Docs for SAX and DOM</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="../resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
39
40            <P>
41<!-- Generated by Doxygen 1.2.14 -->
42<center>
43<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
44<hr><h1>PlatformUtils.hpp</h1><a href="PlatformUtils_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/*</font>
4500002 <font class="comment"> * Copyright 1999-2004 The Apache Software Foundation.</font>
4600003 <font class="comment"> * </font>
4700004 <font class="comment"> * Licensed under the Apache License, Version 2.0 (the "License");</font>
4800005 <font class="comment"> * you may not use this file except in compliance with the License.</font>
4900006 <font class="comment"> * You may obtain a copy of the License at</font>
5000007 <font class="comment"> * </font>
5100008 <font class="comment"> *      http://www.apache.org/licenses/LICENSE-2.0</font>
5200009 <font class="comment"> * </font>
5300010 <font class="comment"> * Unless required by applicable law or agreed to in writing, software</font>
5400011 <font class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</font>
5500012 <font class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</font>
5600013 <font class="comment"> * See the License for the specific language governing permissions and</font>
5700014 <font class="comment"> * limitations under the License.</font>
5800015 <font class="comment"> */</font>
5900016
6000017 <font class="comment">/*</font>
6100018 <font class="comment"> * $Id: PlatformUtils.hpp,v 1.27 2004/09/08 13:56:22 peiyongz Exp $</font>
6200019 <font class="comment"> */</font>
6300020
6400021
6500022 <font class="preprocessor">#if !defined(PLATFORMUTILS_HPP)</font>
66<a name="l00023"></a><a class="code" href="PlatformUtils_8hpp.html#a0">00023</a> <font class="preprocessor"></font><font class="preprocessor">#define PLATFORMUTILS_HPP</font>
6700024 <font class="preprocessor"></font>
6800025 <font class="preprocessor">#include &lt;<a class="code" href="XMLException_8hpp.html">xercesc/util/XMLException.hpp</a>&gt;</font>
6900026 <font class="preprocessor">#include &lt;<a class="code" href="PanicHandler_8hpp.html">xercesc/util/PanicHandler.hpp</a>&gt;</font>
7000027
7100028 <a class="code" href="XercesDefs_8hpp.html#a2">XERCES_CPP_NAMESPACE_BEGIN</a>
7200029
73<a name="l00030"></a><a class="code" href="PlatformUtils_8hpp.html#a1">00030</a> <font class="keyword">class </font><a class="code" href="PlatformUtils_8hpp.html#a1">XMLMsgLoader</a>;
7400031 <font class="keyword">class </font><a class="code" href="classXMLNetAccessor.html">XMLNetAccessor</a>;
7500032 <font class="keyword">class </font><a class="code" href="classXMLTransService.html">XMLTransService</a>;
7600033 <font class="keyword">class </font><a class="code" href="classMemoryManager.html">MemoryManager</a>;
7700034 <font class="keyword">class </font>XMLMutex;
7800035
7900036 <font class="comment">//</font>
8000037 <font class="comment">//  For internal use only</font>
8100038 <font class="comment">//</font>
8200039 <font class="comment">//  This class provides a simple abstract API via which lazily evaluated</font>
8300040 <font class="comment">//  data can be cleaned up.</font>
8400041 <font class="comment">//</font>
85<a name="l00042"></a><a class="code" href="classXMLDeleter.html">00042</a> <font class="keyword">class </font><a class="code" href="XercesDefs_8hpp.html#a8"></a> <a class="code" href="classXMLDeleter.html">XMLDeleter</a>
8600043 {
8700044 <font class="keyword">public</font> :
8800045     <font class="keyword">virtual</font> ~<a class="code" href="classXMLDeleter.html">XMLDeleter</a>();
8900046
9000047 <font class="keyword">protected</font> :
9100048     <a class="code" href="classXMLDeleter.html">XMLDeleter</a>();
9200049
9300050 <font class="keyword">private</font> :
9400051     <a class="code" href="classXMLDeleter.html">XMLDeleter</a>(<font class="keyword">const</font> <a class="code" href="classXMLDeleter.html">XMLDeleter</a>&amp;);
9500052     <a class="code" href="classXMLDeleter.html">XMLDeleter</a>&amp; operator=(<font class="keyword">const</font> <a class="code" href="classXMLDeleter.html">XMLDeleter</a>&amp;);
9600053 };
9700054
9800055
99<a name="l00064"></a><a class="code" href="classXMLPlatformUtils.html">00064</a> <font class="keyword">class </font><a class="code" href="XercesDefs_8hpp.html#a8"></a> XMLPlatformUtils
10000065 {
10100066 <font class="keyword">public</font> :
10200067
10300070
104<a name="l00083"></a><a class="code" href="classXMLPlatformUtils.html#z488_0">00083</a>     <font class="keyword">static</font> <a class="code" href="classXMLNetAccessor.html">XMLNetAccessor</a>*      fgNetAccessor;
10500084
106<a name="l00095"></a><a class="code" href="classXMLPlatformUtils.html#z488_1">00095</a>     <font class="keyword">static</font> <a class="code" href="classXMLTransService.html">XMLTransService</a>*     fgTransService;
10700096
108<a name="l00101"></a><a class="code" href="classXMLPlatformUtils.html#z488_2">00101</a>     <font class="keyword">static</font> <a class="code" href="classPanicHandler.html">PanicHandler</a>*        fgUserPanicHandler;
10900102     
110<a name="l00107"></a><a class="code" href="classXMLPlatformUtils.html#z488_3">00107</a>     <font class="keyword">static</font> <a class="code" href="classPanicHandler.html">PanicHandler</a>*        fgDefaultPanicHandler;
11100108
112<a name="l00114"></a><a class="code" href="classXMLPlatformUtils.html#z488_4">00114</a>     <font class="keyword">static</font> <a class="code" href="classMemoryManager.html">MemoryManager</a>*       fgMemoryManager;
11300115     
114<a name="l00124"></a><a class="code" href="classXMLPlatformUtils.html#z488_5">00124</a>     <font class="keyword">static</font> <a class="code" href="classMemoryManager.html">MemoryManager</a>*       fgArrayMemoryManager;
11500125
116<a name="l00126"></a><a class="code" href="classXMLPlatformUtils.html#z488_6">00126</a>     <font class="keyword">static</font> XMLMutex*            fgAtomicMutex;
11700127     
11800129
11900130
12000133
12100164     <font class="keyword">static</font> <font class="keywordtype">void</font> Initialize(<font class="keyword">const</font> <font class="keywordtype">char</font>*          <font class="keyword">const</font> locale = <a class="code" href="classXMLUni.html#p202">XMLUni::fgXercescDefaultLocale</a>
12200165                          , <font class="keyword">const</font> <font class="keywordtype">char</font>*          <font class="keyword">const</font> nlsHome = 0
12300166                          ,       <a class="code" href="classPanicHandler.html">PanicHandler</a>*  <font class="keyword">const</font> panicHandler = 0
12400167                          ,       <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> memoryManager = 0);
12500168
12600175     <font class="keyword">static</font> <font class="keywordtype">void</font> Terminate();
12700176
12800193     <font class="keyword">static</font> <font class="keywordtype">void</font> panic
12900194     (
13000195         <font class="keyword">const</font>   <a class="code" href="classPanicHandler.html#z485_0">PanicHandler::PanicReasons</a>    reason
13100196     );
13200197     
13300199
13400202
13500216     <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> curFilePos(FileHandle theFile
13600217         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
13700218
13800229     <font class="keyword">static</font> <font class="keywordtype">void</font> closeFile(FileHandle theFile
13900230         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
14000231
14100242     <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> fileSize(FileHandle theFile
14200243         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
14300244
14400255     <font class="keyword">static</font> FileHandle openFile(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> fileName
14500256         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
14600257
14700268     <font class="keyword">static</font> FileHandle openFile(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> fileName
14800269         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
14900270
15000281     <font class="keyword">static</font> FileHandle openFileToWrite(<font class="keyword">const</font> <font class="keywordtype">char</font>* <font class="keyword">const</font> fileName
15100282         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
15200283
15300294     <font class="keyword">static</font> FileHandle openFileToWrite(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> fileName
15400295         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
15500296
15600307     <font class="keyword">static</font> FileHandle openStdInHandle(<a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
15700308
15800325     <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> readFileBuffer
15900326     (
16000327                 FileHandle      theFile
16100328         , <font class="keyword">const</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font>    toRead
16200329         ,       <a class="code" href="XercesDefs_8hpp.html#a16">XMLByte</a>* <font class="keyword">const</font>  toFill
16300330         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
16400331     );
16500332
16600347     <font class="keyword">static</font> <font class="keywordtype">void</font> writeBufferToFile
16700348     (
16800349           FileHandle     <font class="keyword">const</font>  theFile
16900350         , <font class="keywordtype">long</font>                  toWrite
17000351         , <font class="keyword">const</font> <a class="code" href="XercesDefs_8hpp.html#a16">XMLByte</a>* <font class="keyword">const</font>  toFlush
17100352         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
17200353     );
17300354
17400364     <font class="keyword">static</font> <font class="keywordtype">void</font> resetFile(FileHandle theFile
17500365         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
17600366
17700368
17800369
17900393     <font class="keyword">static</font> XMLCh* getFullPath
18000394     (
18100395         <font class="keyword">const</font> XMLCh* <font class="keyword">const</font> srcPath
18200396         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
18300397     );
18400398
18500412     <font class="keyword">static</font> XMLCh* getCurrentDirectory
18600413     (
18700414         <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
18800415     );
18900416
19000426     <font class="keyword">static</font> <font class="keyword">inline</font> <font class="keywordtype">bool</font> isAnySlash(XMLCh c);
19100427     
19200437     <font class="keyword">static</font> <font class="keywordtype">void</font>   removeDotSlash(XMLCh* <font class="keyword">const</font> srcPath
19300438         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
19400439
19500450     <font class="keyword">static</font> <font class="keywordtype">void</font>   removeDotDotSlash(XMLCh* <font class="keyword">const</font> srcPath
19600451         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
19700452
19800466     <font class="keyword">static</font> <font class="keywordtype">bool</font> isRelative(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> toCheck
19900467         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
20000468         );
20100469
20200489     <font class="keyword">static</font> XMLCh* weavePaths
20300490     (
20400491         <font class="keyword">const</font>   XMLCh* <font class="keyword">const</font>    basePath
20500492         , <font class="keyword">const</font> XMLCh* <font class="keyword">const</font>    relativePath
20600493         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>
20700494     );
20800496
20900499
21000509     <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> getCurrentMillis();
21100511
21200514
21300522     <font class="keyword">static</font> <font class="keywordtype">void</font> closeMutex(<font class="keywordtype">void</font>* <font class="keyword">const</font> mtxHandle);
21400523
21500531     <font class="keyword">static</font> <font class="keywordtype">void</font> lockMutex(<font class="keywordtype">void</font>* <font class="keyword">const</font> mtxHandle);
21600532
21700540     <font class="keyword">static</font> <font class="keywordtype">void</font>* makeMutex();
21800541
21900554     <font class="keyword">static</font> <font class="keywordtype">void</font> unlockMutex(<font class="keywordtype">void</font>* <font class="keyword">const</font> mtxHandle);
22000555
22100557
22200558
22300561
22400569     <font class="keyword">static</font> <a class="code" href="PlatformUtils_8hpp.html#a1">XMLMsgLoader</a>* loadMsgSet(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> msgDomain);
22500570
22600572
22700575
22800601     <font class="keyword">static</font> <font class="keywordtype">void</font>* compareAndSwap
22900602     (
23000603                 <font class="keywordtype">void</font>**      toFill
23100604         , <font class="keyword">const</font> <font class="keywordtype">void</font>* <font class="keyword">const</font> newValue
23200605         , <font class="keyword">const</font> <font class="keywordtype">void</font>* <font class="keyword">const</font> toCompare
23300606     );
23400607
23500609
23600610
23700613
23800633     <font class="keyword">static</font> <font class="keywordtype">int</font> atomicIncrement(<font class="keywordtype">int</font>&amp; location);
23900634
24000654     <font class="keyword">static</font> <font class="keywordtype">int</font> atomicDecrement(<font class="keywordtype">int</font>&amp; location);
24100655
24200657
24300671     <font class="keyword">static</font> <font class="keywordtype">void</font> recognizeNEL(<font class="keywordtype">bool</font> state
24400672         , <a class="code" href="classMemoryManager.html">MemoryManager</a>* <font class="keyword">const</font> manager  = <a class="code" href="classXMLPlatformUtils.html#z488_4">XMLPlatformUtils::fgMemoryManager</a>);
24500673
24600677     <font class="keyword">static</font> <font class="keywordtype">bool</font> isNELRecognized();
24700679
24800691     <font class="keyword">static</font> <font class="keywordtype">void</font> strictIANAEncoding(<font class="keyword">const</font> <font class="keywordtype">bool</font> state);
24900692
25000697     <font class="keyword">static</font> <font class="keywordtype">bool</font> isStrictIANAEncoding();
25100699         
25200707     <font class="keyword">static</font> <font class="keyword">inline</font> size_t alignPointerForNewBlockAllocation(size_t ptrSize);
25300708
25400709 <font class="keyword">private</font> :
25500710     <font class="comment">// -----------------------------------------------------------------------</font>
25600711     <font class="comment">//  Unimplemented constructors and operators</font>
25700712     <font class="comment">// -----------------------------------------------------------------------</font>
25800713     XMLPlatformUtils();
25900714
26000717
26100723     <font class="keyword">static</font> <a class="code" href="PlatformUtils_8hpp.html#a1">XMLMsgLoader</a>* loadAMsgSet(<font class="keyword">const</font> XMLCh* <font class="keyword">const</font> msgDomain);
26200724
26300734     <font class="keyword">static</font> <a class="code" href="classXMLNetAccessor.html">XMLNetAccessor</a>* makeNetAccessor();
26400735
26500746     <font class="keyword">static</font> <a class="code" href="classXMLTransService.html">XMLTransService</a>* makeTransService();
26600747
26700754     <font class="keyword">static</font> <font class="keywordtype">void</font> platformInit();
26800755
26900762     <font class="keyword">static</font> <font class="keywordtype">void</font> platformTerm();
27000763
27100771     <font class="keyword">static</font> <font class="keywordtype">int</font>  searchSlashDotDotSlash(XMLCh* <font class="keyword">const</font> srcPath);
27200772
27300774
27400777
27500784     <font class="keyword">static</font> <font class="keywordtype">bool</font> fgMemMgrAdopted;
27600785
27700787 };
27800788
27900789
280<a name="l00790"></a><a class="code" href="PlatformUtils_8hpp.html#a2">00790</a> <a class="code" href="XMLException_8hpp.html#a1">MakeXMLException</a>(XMLPlatformUtilsException, <a class="code" href="XercesDefs_8hpp.html#a8"></a>)
28100791
28200792
28300793 <font class="comment">// ---------------------------------------------------------------------------</font>
28400794 <font class="comment">//  XMLPlatformUtils: alignPointerForNewBlockAllocation</font>
28500795 <font class="comment">// ---------------------------------------------------------------------------</font>
28600796 <font class="comment">//  Calculate alignment required by platform for a new</font>
28700797 <font class="comment">//  block allocation. We use this in our custom allocators</font>
28800798 <font class="comment">//  to ensure that returned blocks are properly aligned.</font>
28900799 <font class="comment">//  Note that, although this will take a pointer and return the position</font>
29000800 <font class="comment">//  at which it should be placed for correct alignment, in our code</font>
29100801 <font class="comment">//  we normally use size_t parameters to discover what the alignment</font>
29200802 <font class="comment">//  of header blocks should be.  Thus, if this is to be</font>
29300803 <font class="comment">//  used for the former purpose, to make compilers happy</font>
29400804 <font class="comment">//  some casting will be necessary - neilg.</font>
29500805 <font class="comment">//</font>
29600806 <font class="comment">//  Note: XML_PLATFORM_NEW_BLOCK_ALIGNMENT may be specified on a</font>
29700807 <font class="comment">//        per-architecture basis to dictate the alignment requirements</font>
29800808 <font class="comment">//        of the architecture. In the absense of this specification,</font>
29900809 <font class="comment">//        this routine guesses at the correct alignment value.</font>
30000810 <font class="comment">//</font>
30100811 <font class="comment">//        A XML_PLATFORM_NEW_BLOCK_ALIGNMENT value of zero is illegal.</font>
30200812 <font class="comment">//        If a platform requires absolutely no alignment, a value</font>
30300813 <font class="comment">//        of 1 should be specified ("align pointers on 1 byte boundaries").</font>
30400814 <font class="comment">//</font>
30500815 <font class="keyword">inline</font> size_t
30600816 <a class="code" href="classXMLPlatformUtils.html#d0">XMLPlatformUtils::alignPointerForNewBlockAllocation</a>(size_t ptrSize)
30700817 {
30800818     <font class="comment">//  Macro XML_PLATFORM_NEW_BLOCK_ALIGNMENT may be defined</font>
30900819     <font class="comment">//  as needed to dictate alignment requirements on a</font>
31000820     <font class="comment">//  per-architecture basis. In the absense of that we</font>
31100821     <font class="comment">//  take an educated guess.</font>
31200822 <font class="preprocessor">    #ifdef XML_PLATFORM_NEW_BLOCK_ALIGNMENT</font>
31300823 <font class="preprocessor"></font>        size_t alignment = XML_PLATFORM_NEW_BLOCK_ALIGNMENT;
31400824 <font class="preprocessor">    #else</font>
31500825 <font class="preprocessor"></font>        size_t alignment = (<font class="keyword">sizeof</font>(<font class="keywordtype">void</font>*) &gt;= <font class="keyword">sizeof</font>(double)) ? <font class="keyword">sizeof</font>(<font class="keywordtype">void</font>*) : <font class="keyword">sizeof</font>(double);
31600826 <font class="preprocessor">    #endif</font>
31700827 <font class="preprocessor"></font>   
31800828     <font class="comment">//  Calculate current alignment of pointer</font>
31900829     size_t current = ptrSize % alignment;
32000830     
32100831     <font class="comment">//  Adjust pointer alignment as needed</font>
32200832     <font class="keywordflow">return</font> (current == 0)
32300833          ? ptrSize
32400834          : (ptrSize + alignment - current);
32500835 }
32600836
32700837
32800838
32900839 <font class="comment">// ---------------------------------------------------------------------------</font>
33000840 <font class="comment">//  XMLDeleter: Public Destructor</font>
33100841 <font class="comment">// ---------------------------------------------------------------------------</font>
332<a name="l00842"></a><a class="code" href="classXMLDeleter.html#a0">00842</a> <font class="keyword">inline</font> <a class="code" href="classXMLDeleter.html#a0">XMLDeleter::~XMLDeleter</a>()
33300843 {
33400844 }
33500845
33600846 <font class="comment">// ---------------------------------------------------------------------------</font>
33700847 <font class="comment">//  XMLDeleter: Hidden constructors and operators</font>
33800848 <font class="comment">// ---------------------------------------------------------------------------</font>
339<a name="l00849"></a><a class="code" href="classXMLDeleter.html#b0">00849</a> <font class="keyword">inline</font> <a class="code" href="classXMLDeleter.html#b0">XMLDeleter::XMLDeleter</a>()
34000850 {
34100851 }
34200852
34300853 <a class="code" href="XercesDefs_8hpp.html#a3">XERCES_CPP_NAMESPACE_END</a>
34400854
34500855 <font class="preprocessor">#endif</font>
346</pre></div>    </FONT></TD></TR></TABLE><BR>
347</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="620"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1" alt=""></TD></TR><TR><TD align="center"><FONT color="#0086b2" size="-1"><I>
348              Copyright &copy; 1994-2004 The Apache Software Foundation.
349              All Rights Reserved.
350            </I></FONT></TD></TR></TABLE></BODY></HTML>
Note: See TracBrowser for help on using the repository browser.