<!-- This comment will put IE 6, 7 and 8 in quirks mode --> <!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>ICU 4.4.1: utrace.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javaScript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body onload='searchBox.OnSelectItem(0);'> <!-- Generated by Doxygen 1.6.2-20100208 --> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search'); --></script> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <img id="MSearchSelect" src="search/search.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </div> </li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <h1>utrace.h</h1><a href="utrace_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">*******************************************************************************</span> <a name="l00003"></a>00003 <span class="comment">*</span> <a name="l00004"></a>00004 <span class="comment">* Copyright (C) 2003-2006, International Business Machines</span> <a name="l00005"></a>00005 <span class="comment">* Corporation and others. All Rights Reserved.</span> <a name="l00006"></a>00006 <span class="comment">*</span> <a name="l00007"></a>00007 <span class="comment">*******************************************************************************</span> <a name="l00008"></a>00008 <span class="comment">* file name: utrace.h</span> <a name="l00009"></a>00009 <span class="comment">* encoding: US-ASCII</span> <a name="l00010"></a>00010 <span class="comment">* tab size: 8 (not used)</span> <a name="l00011"></a>00011 <span class="comment">* indentation:4</span> <a name="l00012"></a>00012 <span class="comment">*</span> <a name="l00013"></a>00013 <span class="comment">* created on: 2003aug06</span> <a name="l00014"></a>00014 <span class="comment">* created by: Markus W. Scherer</span> <a name="l00015"></a>00015 <span class="comment">*</span> <a name="l00016"></a>00016 <span class="comment">* Definitions for ICU tracing/logging.</span> <a name="l00017"></a>00017 <span class="comment">*</span> <a name="l00018"></a>00018 <span class="comment">*/</span> <a name="l00019"></a>00019 <a name="l00020"></a>00020 <span class="preprocessor">#ifndef __UTRACE_H__</span> <a name="l00021"></a>00021 <span class="preprocessor"></span><span class="preprocessor">#define __UTRACE_H__</span> <a name="l00022"></a>00022 <span class="preprocessor"></span> <a name="l00023"></a>00023 <span class="preprocessor">#include <stdarg.h></span> <a name="l00024"></a>00024 <span class="preprocessor">#include "<a class="code" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">unicode/utypes.h</a>"</span> <a name="l00025"></a>00025 <a name="l00037"></a>00037 <a class="code" href="umachine_8h.html#a82c853d86803ab75c89267be54fbac6a" title="This is used to begin a declaration of a library private ICU C API.">U_CDECL_BEGIN</a> <a name="l00038"></a>00038 <a name="l00044"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079">00044</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079" title="Trace severity levels.">UTraceLevel</a> { <a name="l00046"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079ad73020624fba9734da1067a92799a7fd">00046</a> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079ad73020624fba9734da1067a92799a7fd" title="Disable all tracing.">UTRACE_OFF</a>=-1, <a name="l00048"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079a8e9415b7ad8550fa3d9dcc196f88fe98">00048</a> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079a8e9415b7ad8550fa3d9dcc196f88fe98" title="Trace error conditions only.">UTRACE_ERROR</a>=0, <a name="l00050"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079a4329e6d348c1ce278aa5a70d9d678416">00050</a> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079a4329e6d348c1ce278aa5a70d9d678416" title="Trace errors and warnings.">UTRACE_WARNING</a>=3, <a name="l00052"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079acf27fc8d57f1b0bd0a1700abcc48e9ad">00052</a> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079acf27fc8d57f1b0bd0a1700abcc48e9ad" title="Trace opens and closes of ICU services.">UTRACE_OPEN_CLOSE</a>=5, <a name="l00054"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079ae88684e6ac3d6f889b5d1603395c6bf1">00054</a> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079ae88684e6ac3d6f889b5d1603395c6bf1" title="Trace an intermediate number of ICU operations.">UTRACE_INFO</a>=7, <a name="l00056"></a><a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079af0102c5618b566755d3d0315aeb18ff4">00056</a> <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079af0102c5618b566755d3d0315aeb18ff4" title="Trace the maximum number of ICU operations.">UTRACE_VERBOSE</a>=9 <a name="l00057"></a>00057 } <a class="code" href="utrace_8h.html#a87213b0396d0aa046bd9116e89152079" title="Trace severity levels.">UTraceLevel</a>; <a name="l00058"></a>00058 <a name="l00063"></a><a class="code" href="utrace_8h.html#a6076ad13223437bd15a3266791905308">00063</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="utrace_8h.html#a6076ad13223437bd15a3266791905308" title="These are the ICU functions that will be traced when tracing is enabled.">UTraceFunctionNumber</a> { <a name="l00064"></a>00064 UTRACE_FUNCTION_START=0, <a name="l00065"></a>00065 UTRACE_U_INIT=UTRACE_FUNCTION_START, <a name="l00066"></a>00066 UTRACE_U_CLEANUP, <a name="l00067"></a>00067 UTRACE_FUNCTION_LIMIT, <a name="l00068"></a>00068 <a name="l00069"></a>00069 UTRACE_CONVERSION_START=0x1000, <a name="l00070"></a>00070 UTRACE_UCNV_OPEN=UTRACE_CONVERSION_START, <a name="l00071"></a>00071 UTRACE_UCNV_OPEN_PACKAGE, <a name="l00072"></a>00072 UTRACE_UCNV_OPEN_ALGORITHMIC, <a name="l00073"></a>00073 UTRACE_UCNV_CLONE, <a name="l00074"></a>00074 UTRACE_UCNV_CLOSE, <a name="l00075"></a>00075 UTRACE_UCNV_FLUSH_CACHE, <a name="l00076"></a>00076 UTRACE_UCNV_LOAD, <a name="l00077"></a>00077 UTRACE_UCNV_UNLOAD, <a name="l00078"></a>00078 UTRACE_CONVERSION_LIMIT, <a name="l00079"></a>00079 <a name="l00080"></a>00080 UTRACE_COLLATION_START=0x2000, <a name="l00081"></a>00081 UTRACE_UCOL_OPEN=UTRACE_COLLATION_START, <a name="l00082"></a>00082 UTRACE_UCOL_CLOSE, <a name="l00083"></a>00083 UTRACE_UCOL_STRCOLL, <a name="l00084"></a>00084 UTRACE_UCOL_GET_SORTKEY, <a name="l00085"></a>00085 UTRACE_UCOL_GETLOCALE, <a name="l00086"></a>00086 UTRACE_UCOL_NEXTSORTKEYPART, <a name="l00087"></a>00087 UTRACE_UCOL_STRCOLLITER, <a name="l00088"></a>00088 UTRACE_UCOL_OPEN_FROM_SHORT_STRING, <a name="l00089"></a>00089 UTRACE_COLLATION_LIMIT <a name="l00090"></a>00090 } <a class="code" href="utrace_8h.html#a6076ad13223437bd15a3266791905308" title="These are the ICU functions that will be traced when tracing is enabled.">UTraceFunctionNumber</a>; <a name="l00091"></a>00091 <a name="l00097"></a>00097 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> <span class="keywordtype">void</span> <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00098"></a>00098 <a class="code" href="utrace_8h.html#aeb56de5759104ee6379b8144afbe6d01" title="Setter for the trace level.">utrace_setLevel</a>(int32_t traceLevel); <a name="l00099"></a>00099 <a name="l00105"></a>00105 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> int32_t <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00106"></a>00106 <a class="code" href="utrace_8h.html#afc368ae253afd3d22821a868765e54e5" title="Getter for the trace level.">utrace_getLevel</a>(<span class="keywordtype">void</span>); <a name="l00107"></a>00107 <a name="l00108"></a>00108 <span class="comment">/* Trace function pointers types ----------------------------- */</span> <a name="l00109"></a>00109 <a name="l00116"></a>00116 <span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code" href="utypes_8h.html#a1fae478cb5a46c7e4a0673d267626696" title="Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function...">U_CALLCONV</a> <a name="l00117"></a><a class="code" href="utrace_8h.html#a57431e5b7de5217371b6b269039d8960">00117</a> <a class="code" href="utrace_8h.html#a57431e5b7de5217371b6b269039d8960" title="Type signature for the trace function to be called when entering a function.">UTraceEntry</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *context, int32_t fnNumber); <a name="l00118"></a>00118 <a name="l00132"></a>00132 <span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code" href="utypes_8h.html#a1fae478cb5a46c7e4a0673d267626696" title="Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function...">U_CALLCONV</a> <a name="l00133"></a><a class="code" href="utrace_8h.html#ac819bbfb23657b4a4c465634a0dc0586">00133</a> <a class="code" href="utrace_8h.html#ac819bbfb23657b4a4c465634a0dc0586" title="Type signature for the trace function to be called when exiting from a function.">UTraceExit</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *context, int32_t fnNumber, <a name="l00134"></a>00134 <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, va_list args); <a name="l00135"></a>00135 <a name="l00147"></a>00147 <span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code" href="utypes_8h.html#a1fae478cb5a46c7e4a0673d267626696" title="Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function...">U_CALLCONV</a> <a name="l00148"></a><a class="code" href="utrace_8h.html#a22a4d10cb4754a7d3178dc55eb61842f">00148</a> <a class="code" href="utrace_8h.html#a22a4d10cb4754a7d3178dc55eb61842f" title="Type signature for the trace function to be called from within an ICU function to...">UTraceData</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *context, int32_t fnNumber, int32_t level, <a name="l00149"></a>00149 <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, va_list args); <a name="l00150"></a>00150 <a name="l00179"></a>00179 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> <span class="keywordtype">void</span> <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00180"></a>00180 <a class="code" href="utrace_8h.html#aa87ea156afa4807f0a3db73d85c66551" title="Set ICU Tracing functions.">utrace_setFunctions</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *context, <a name="l00181"></a>00181 <a class="code" href="utrace_8h.html#a57431e5b7de5217371b6b269039d8960" title="Type signature for the trace function to be called when entering a function.">UTraceEntry</a> *e, <a class="code" href="utrace_8h.html#ac819bbfb23657b4a4c465634a0dc0586" title="Type signature for the trace function to be called when exiting from a function.">UTraceExit</a> *x, <a class="code" href="utrace_8h.html#a22a4d10cb4754a7d3178dc55eb61842f" title="Type signature for the trace function to be called from within an ICU function to...">UTraceData</a> *d); <a name="l00182"></a>00182 <a name="l00193"></a>00193 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> <span class="keywordtype">void</span> <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00194"></a>00194 <a class="code" href="utrace_8h.html#a15c3bee50058d10cdaa1ecc87cd18bae" title="Get the currently installed ICU tracing functions.">utrace_getFunctions</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> **context, <a name="l00195"></a>00195 <a class="code" href="utrace_8h.html#a57431e5b7de5217371b6b269039d8960" title="Type signature for the trace function to be called when entering a function.">UTraceEntry</a> **e, <a class="code" href="utrace_8h.html#ac819bbfb23657b4a4c465634a0dc0586" title="Type signature for the trace function to be called when exiting from a function.">UTraceExit</a> **x, <a class="code" href="utrace_8h.html#a22a4d10cb4754a7d3178dc55eb61842f" title="Type signature for the trace function to be called from within an ICU function to...">UTraceData</a> **d); <a name="l00196"></a>00196 <a name="l00197"></a>00197 <a name="l00198"></a>00198 <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"> * ICU trace format string syntax</span> <a name="l00202"></a>00202 <span class="comment"> *</span> <a name="l00203"></a>00203 <span class="comment"> * Format Strings are passed to UTraceData functions, and define the</span> <a name="l00204"></a>00204 <span class="comment"> * number and types of the trace data being passed on each call.</span> <a name="l00205"></a>00205 <span class="comment"> *</span> <a name="l00206"></a>00206 <span class="comment"> * The UTraceData function, which is supplied by the application,</span> <a name="l00207"></a>00207 <span class="comment"> * not by ICU, can either forward the trace data (passed via</span> <a name="l00208"></a>00208 <span class="comment"> * varargs) and the format string back to ICU for formatting into</span> <a name="l00209"></a>00209 <span class="comment"> * a displayable string, or it can interpret the format itself,</span> <a name="l00210"></a>00210 <span class="comment"> * and do as it wishes with the trace data.</span> <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"> * Goals for the format string</span> <a name="l00214"></a>00214 <span class="comment"> * - basic data output</span> <a name="l00215"></a>00215 <span class="comment"> * - easy to use for trace programmer</span> <a name="l00216"></a>00216 <span class="comment"> * - sufficient provision for data types for trace output readability</span> <a name="l00217"></a>00217 <span class="comment"> * - well-defined types and binary portable APIs</span> <a name="l00218"></a>00218 <span class="comment"> *</span> <a name="l00219"></a>00219 <span class="comment"> * Non-goals</span> <a name="l00220"></a>00220 <span class="comment"> * - printf compatibility</span> <a name="l00221"></a>00221 <span class="comment"> * - fancy formatting</span> <a name="l00222"></a>00222 <span class="comment"> * - argument reordering and other internationalization features</span> <a name="l00223"></a>00223 <span class="comment"> *</span> <a name="l00224"></a>00224 <span class="comment"> * ICU trace format strings contain plain text with argument inserts,</span> <a name="l00225"></a>00225 <span class="comment"> * much like standard printf format strings.</span> <a name="l00226"></a>00226 <span class="comment"> * Each insert begins with a '%', then optionally contains a 'v',</span> <a name="l00227"></a>00227 <span class="comment"> * then exactly one type character.</span> <a name="l00228"></a>00228 <span class="comment"> * Two '%' in a row represent a '%' instead of an insert.</span> <a name="l00229"></a>00229 <span class="comment"> * The trace format strings need not have \n at the end.</span> <a name="l00230"></a>00230 <span class="comment"> *</span> <a name="l00231"></a>00231 <span class="comment"> *</span> <a name="l00232"></a>00232 <span class="comment"> * Types</span> <a name="l00233"></a>00233 <span class="comment"> * -----</span> <a name="l00234"></a>00234 <span class="comment"> *</span> <a name="l00235"></a>00235 <span class="comment"> * Type characters:</span> <a name="l00236"></a>00236 <span class="comment"> * - c A char character in the default codepage.</span> <a name="l00237"></a>00237 <span class="comment"> * - s A NUL-terminated char * string in the default codepage.</span> <a name="l00238"></a>00238 <span class="comment"> * - S A UChar * string. Requires two params, (ptr, length). Length=-1 for nul term.</span> <a name="l00239"></a>00239 <span class="comment"> * - b A byte (8-bit integer).</span> <a name="l00240"></a>00240 <span class="comment"> * - h A 16-bit integer. Also a 16 bit Unicode code unit.</span> <a name="l00241"></a>00241 <span class="comment"> * - d A 32-bit integer. Also a 20 bit Unicode code point value. </span> <a name="l00242"></a>00242 <span class="comment"> * - l A 64-bit integer.</span> <a name="l00243"></a>00243 <span class="comment"> * - p A data pointer.</span> <a name="l00244"></a>00244 <span class="comment"> *</span> <a name="l00245"></a>00245 <span class="comment"> * Vectors</span> <a name="l00246"></a>00246 <span class="comment"> * -------</span> <a name="l00247"></a>00247 <span class="comment"> *</span> <a name="l00248"></a>00248 <span class="comment"> * If the 'v' is not specified, then one item of the specified type</span> <a name="l00249"></a>00249 <span class="comment"> * is passed in.</span> <a name="l00250"></a>00250 <span class="comment"> * If the 'v' (for "vector") is specified, then a vector of items of the</span> <a name="l00251"></a>00251 <span class="comment"> * specified type is passed in, via a pointer to the first item</span> <a name="l00252"></a>00252 <span class="comment"> * and an int32_t value for the length of the vector.</span> <a name="l00253"></a>00253 <span class="comment"> * Length==-1 means zero or NUL termination. Works for vectors of all types.</span> <a name="l00254"></a>00254 <span class="comment"> *</span> <a name="l00255"></a>00255 <span class="comment"> * Note: %vS is a vector of (UChar *) strings. The strings must</span> <a name="l00256"></a>00256 <span class="comment"> * be nul terminated as there is no way to provide a</span> <a name="l00257"></a>00257 <span class="comment"> * separate length parameter for each string. The length</span> <a name="l00258"></a>00258 <span class="comment"> * parameter (required for all vectors) is the number of</span> <a name="l00259"></a>00259 <span class="comment"> * strings, not the length of the strings.</span> <a name="l00260"></a>00260 <span class="comment"> *</span> <a name="l00261"></a>00261 <span class="comment"> * Examples</span> <a name="l00262"></a>00262 <span class="comment"> * --------</span> <a name="l00263"></a>00263 <span class="comment"> *</span> <a name="l00264"></a>00264 <span class="comment"> * These examples show the parameters that will be passed to an application's</span> <a name="l00265"></a>00265 <span class="comment"> * UTraceData() function for various formats.</span> <a name="l00266"></a>00266 <span class="comment"> *</span> <a name="l00267"></a>00267 <span class="comment"> * - the precise formatting is up to the application!</span> <a name="l00268"></a>00268 <span class="comment"> * - the examples use type casts for arguments only to _show_ the types of</span> <a name="l00269"></a>00269 <span class="comment"> * arguments without needing variable declarations in the examples;</span> <a name="l00270"></a>00270 <span class="comment"> * the type casts will not be necessary in actual code</span> <a name="l00271"></a>00271 <span class="comment"> *</span> <a name="l00272"></a>00272 <span class="comment"> * UTraceDataFunc(context, fnNumber, level,</span> <a name="l00273"></a>00273 <span class="comment"> * "There is a character %c in the string %s.", // Format String </span> <a name="l00274"></a>00274 <span class="comment"> * (char)c, (const char *)s); // varargs parameters</span> <a name="l00275"></a>00275 <span class="comment"> * -> There is a character 0x42 'B' in the string "Bravo".</span> <a name="l00276"></a>00276 <span class="comment"> *</span> <a name="l00277"></a>00277 <span class="comment"> * UTraceDataFunc(context, fnNumber, level,</span> <a name="l00278"></a>00278 <span class="comment"> * "Vector of bytes %vb vector of chars %vc",</span> <a name="l00279"></a>00279 <span class="comment"> * (const uint8_t *)bytes, (int32_t)bytesLength,</span> <a name="l00280"></a>00280 <span class="comment"> * (const char *)chars, (int32_t)charsLength);</span> <a name="l00281"></a>00281 <span class="comment"> * -> Vector of bytes</span> <a name="l00282"></a>00282 <span class="comment"> * 42 63 64 3f [4]</span> <a name="l00283"></a>00283 <span class="comment"> * vector of chars</span> <a name="l00284"></a>00284 <span class="comment"> * "Bcd?"[4]</span> <a name="l00285"></a>00285 <span class="comment"> *</span> <a name="l00286"></a>00286 <span class="comment"> * UTraceDataFunc(context, fnNumber, level,</span> <a name="l00287"></a>00287 <span class="comment"> * "An int32_t %d and a whole bunch of them %vd",</span> <a name="l00288"></a>00288 <span class="comment"> * (int32_t)-5, (const int32_t *)ints, (int32_t)intsLength);</span> <a name="l00289"></a>00289 <span class="comment"> * -> An int32_t 0xfffffffb and a whole bunch of them</span> <a name="l00290"></a>00290 <span class="comment"> * fffffffb 00000005 0000010a [3]</span> <a name="l00291"></a>00291 <span class="comment"> *</span> <a name="l00292"></a>00292 <span class="comment"> */</span> <a name="l00293"></a>00293 <a name="l00294"></a>00294 <a name="l00295"></a>00295 <a name="l00315"></a>00315 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> int32_t <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00316"></a>00316 <a class="code" href="utrace_8h.html#abcd5b54f8b10a9a319abf195711c717a" title="Trace output Formatter.">utrace_vformat</a>(<span class="keywordtype">char</span> *outBuf, int32_t capacity, <a name="l00317"></a>00317 int32_t indent, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, va_list args); <a name="l00318"></a>00318 <a name="l00336"></a>00336 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> int32_t <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00337"></a>00337 <a class="code" href="utrace_8h.html#ab1c46bbcc3ae5dda6eeb89ba0b04eab5" title="Trace output Formatter.">utrace_format</a>(<span class="keywordtype">char</span> *outBuf, int32_t capacity, <a name="l00338"></a>00338 int32_t indent, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, ...); <a name="l00339"></a>00339 <a name="l00340"></a>00340 <a name="l00341"></a>00341 <a name="l00342"></a>00342 <span class="comment">/* Trace function numbers --------------------------------------------------- */</span> <a name="l00343"></a>00343 <a name="l00353"></a>00353 <a class="code" href="umachine_8h.html#af3e3799716eaa41e3f49c7bf18c62b98" title="This is used to declare a function as a stable public ICU C API.">U_STABLE</a> <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a name="l00354"></a>00354 <a class="code" href="utrace_8h.html#a888fae89e1bae1080cca94e4284bfeea" title="Get the name of a function from its trace function number.">utrace_functionName</a>(int32_t fnNumber); <a name="l00355"></a>00355 <a name="l00356"></a>00356 <a class="code" href="umachine_8h.html#a1a820e5c6cbe8ac1742b654e6bf9ed7d" title="This is used to end a declaration of a library private ICU C API.">U_CDECL_END</a> <a name="l00357"></a>00357 <a name="l00358"></a>00358 <span class="preprocessor">#endif</span> </pre></div></div> <!--- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Defines</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <hr class="footer"/><address style="text-align: right;"><small>Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2-20100208 </small></address> </body> </html>