1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> 3<title>I/O and Messages</title> 4<link href="doxygen.css" rel="stylesheet" type="text/css"> 5</head><body> 6<!-- Generated by Doxygen 1.2.17 --> 7<h1>I/O and Messages</h1><table border=0 cellpadding=0 cellspacing=0> 8<tr><td></td></tr> 9<tr><td colspan=2><br><h2>Data Structures</h2></td></tr> 10<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="struct__TidyInputSource.html">_TidyInputSource</a></td></tr> 11<tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="struct__TidyOutputSink.html">_TidyOutputSink</a></td></tr> 12<tr><td colspan=2><br><h2>Defines</h2></td></tr> 13<tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group__IO.html#a17">EndOfStream</a> (~0u)</td></tr> 14<tr><td colspan=2><br><h2>Typedefs</h2></td></tr> 15<tr><td nowrap align=right valign=top>typedef int(* </td><td valign=bottom><a class="el" href="group__IO.html#a0">TidyGetByteFunc</a> )(uint sourceData)</td></tr> 16<tr><td nowrap align=right valign=top>typedef void(* </td><td valign=bottom><a class="el" href="group__IO.html#a1">TidyUngetByteFunc</a> )(uint sourceData, byte bt)</td></tr> 17<tr><td nowrap align=right valign=top>typedef Bool(* </td><td valign=bottom><a class="el" href="group__IO.html#a2">TidyEOFFunc</a> )(uint sourceData)</td></tr> 18<tr><td nowrap align=right valign=top>typedef TIDY_STRUCT struct <br> 19<a class="el" href="struct__TidyInputSource.html">_TidyInputSource</a> </td><td valign=bottom><a class="el" href="group__IO.html#a3">TidyInputSource</a></td></tr> 20<tr><td nowrap align=right valign=top>typedef void(* </td><td valign=bottom><a class="el" href="group__IO.html#a4">TidyPutByteFunc</a> )(uint sinkData, byte bt)</td></tr> 21<tr><td nowrap align=right valign=top>typedef TIDY_STRUCT struct <br> 22<a class="el" href="struct__TidyOutputSink.html">_TidyOutputSink</a> </td><td valign=bottom><a class="el" href="group__IO.html#a5">TidyOutputSink</a></td></tr> 23<tr><td nowrap align=right valign=top>typedef Bool(* </td><td valign=bottom><a class="el" href="group__IO.html#a6">TidyReportFilter</a> )(<a class="el" href="structTidyDoc.html">TidyDoc</a> tdoc, <a class="el" href="tidyenum_8h.html#a401">TidyReportLevel</a> lvl, uint line, uint col, ctmbstr mssg)</td></tr> 24<tr><td colspan=2><br><h2>Functions</h2></td></tr> 25<tr><td nowrap align=right valign=top>Bool </td><td valign=bottom><a class="el" href="group__IO.html#a7">tidyInitSource</a> (<a class="el" href="group__IO.html#a3">TidyInputSource</a> *source, void *srcData, <a class="el" href="group__IO.html#a0">TidyGetByteFunc</a> gbFunc, <a class="el" href="group__IO.html#a1">TidyUngetByteFunc</a> ugbFunc, <a class="el" href="group__IO.html#a2">TidyEOFFunc</a> endFunc)</td></tr> 26<tr><td nowrap align=right valign=top>uint </td><td valign=bottom><a class="el" href="group__IO.html#a8">tidyGetByte</a> (<a class="el" href="group__IO.html#a3">TidyInputSource</a> *source)</td></tr> 27<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group__IO.html#a9">tidyUngetByte</a> (<a class="el" href="group__IO.html#a3">TidyInputSource</a> *source, uint byteValue)</td></tr> 28<tr><td nowrap align=right valign=top>Bool </td><td valign=bottom><a class="el" href="group__IO.html#a10">tidyIsEOF</a> (<a class="el" href="group__IO.html#a3">TidyInputSource</a> *source)</td></tr> 29<tr><td nowrap align=right valign=top>Bool </td><td valign=bottom><a class="el" href="group__IO.html#a11">tidyInitSink</a> (<a class="el" href="group__IO.html#a5">TidyOutputSink</a> *sink, void *snkData, <a class="el" href="group__IO.html#a4">TidyPutByteFunc</a> pbFunc)</td></tr> 30<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group__IO.html#a12">tidyPutByte</a> (<a class="el" href="group__IO.html#a5">TidyOutputSink</a> *sink, uint byteValue)</td></tr> 31<tr><td nowrap align=right valign=top>Bool </td><td valign=bottom><a class="el" href="group__IO.html#a13">tidySetReportFilter</a> (<a class="el" href="structTidyDoc.html">TidyDoc</a> tdoc, <a class="el" href="group__IO.html#a6">TidyReportFilter</a> filtCallback)</td></tr> 32<tr><td nowrap align=right valign=top>FILE * </td><td valign=bottom><a class="el" href="group__IO.html#a14">tidySetErrorFile</a> (<a class="el" href="structTidyDoc.html">TidyDoc</a> tdoc, ctmbstr errfilnam)</td></tr> 33<tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group__IO.html#a15">tidySetErrorBuffer</a> (<a class="el" href="structTidyDoc.html">TidyDoc</a> tdoc, TidyBuffer *errbuf)</td></tr> 34<tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group__IO.html#a16">tidySetErrorSink</a> (<a class="el" href="structTidyDoc.html">TidyDoc</a> tdoc, <a class="el" href="group__IO.html#a5">TidyOutputSink</a> *sink)</td></tr> 35</table> 36<hr><a name="_details"></a><h2>Detailed Description</h2> 37By default, Tidy will define, create and use instances of input and output handlers for standard C buffered I/O (i.e. FILE* stdin, FILE* stdout and FILE* stderr for content input, content output and diagnostic output, respectively. A FILE* cfgFile input handler will be used for config files. Command line options will just be set directly. <hr><h2>Define Documentation</h2> 38<a name="a17" doxytag="tidy.h::EndOfStream"></a><p> 39<table width="100%" cellpadding="2" cellspacing="0" border="0"> 40 <tr> 41 <td class="md"> 42 <table cellpadding="0" cellspacing="0" border="0"> 43 <tr> 44 <td class="md" nowrap valign="top"> #define EndOfStream (~0u) 45 </table> 46 </td> 47 </tr> 48</table> 49<table cellspacing=5 cellpadding=0 border=0> 50 <tr> 51 <td> 52 53 </td> 54 <td> 55 56<p> 57End of input "character" </td> 58 </tr> 59</table> 60<hr><h2>Typedef Documentation</h2> 61<a name="a0" doxytag="tidy.h::TidyGetByteFunc"></a><p> 62<table width="100%" cellpadding="2" cellspacing="0" border="0"> 63 <tr> 64 <td class="md"> 65 <table cellpadding="0" cellspacing="0" border="0"> 66 <tr> 67 <td class="md" nowrap valign="top"> typedef int(* TidyGetByteFunc)( uint sourceData ) 68 </table> 69 </td> 70 </tr> 71</table> 72<table cellspacing=5 cellpadding=0 border=0> 73 <tr> 74 <td> 75 76 </td> 77 <td> 78 79<p> 80Input Callback: get next byte of input </td> 81 </tr> 82</table> 83<a name="a1" doxytag="tidy.h::TidyUngetByteFunc"></a><p> 84<table width="100%" cellpadding="2" cellspacing="0" border="0"> 85 <tr> 86 <td class="md"> 87 <table cellpadding="0" cellspacing="0" border="0"> 88 <tr> 89 <td class="md" nowrap valign="top"> typedef void(* TidyUngetByteFunc)( uint sourceData, byte bt ) 90 </table> 91 </td> 92 </tr> 93</table> 94<table cellspacing=5 cellpadding=0 border=0> 95 <tr> 96 <td> 97 98 </td> 99 <td> 100 101<p> 102Input Callback: unget a byte of input </td> 103 </tr> 104</table> 105<a name="a2" doxytag="tidy.h::TidyEOFFunc"></a><p> 106<table width="100%" cellpadding="2" cellspacing="0" border="0"> 107 <tr> 108 <td class="md"> 109 <table cellpadding="0" cellspacing="0" border="0"> 110 <tr> 111 <td class="md" nowrap valign="top"> typedef Bool(* TidyEOFFunc)( uint sourceData ) 112 </table> 113 </td> 114 </tr> 115</table> 116<table cellspacing=5 cellpadding=0 border=0> 117 <tr> 118 <td> 119 120 </td> 121 <td> 122 123<p> 124Input Callback: is end of input? </td> 125 </tr> 126</table> 127<a name="a3" doxytag="tidy.h::TidyInputSource"></a><p> 128<table width="100%" cellpadding="2" cellspacing="0" border="0"> 129 <tr> 130 <td class="md"> 131 <table cellpadding="0" cellspacing="0" border="0"> 132 <tr> 133 <td class="md" nowrap valign="top"> typedef TIDY_STRUCT struct <a class="el" href="struct__TidyInputSource.html">_TidyInputSource</a> TidyInputSource 134 </table> 135 </td> 136 </tr> 137</table> 138<table cellspacing=5 cellpadding=0 border=0> 139 <tr> 140 <td> 141 142 </td> 143 <td> 144 145<p> 146TidyInputSource - Delivers raw bytes of input </td> 147 </tr> 148</table> 149<a name="a4" doxytag="tidy.h::TidyPutByteFunc"></a><p> 150<table width="100%" cellpadding="2" cellspacing="0" border="0"> 151 <tr> 152 <td class="md"> 153 <table cellpadding="0" cellspacing="0" border="0"> 154 <tr> 155 <td class="md" nowrap valign="top"> typedef void(* TidyPutByteFunc)( uint sinkData, byte bt ) 156 </table> 157 </td> 158 </tr> 159</table> 160<table cellspacing=5 cellpadding=0 border=0> 161 <tr> 162 <td> 163 164 </td> 165 <td> 166 167<p> 168Output callback: send a byte to output </td> 169 </tr> 170</table> 171<a name="a5" doxytag="tidy.h::TidyOutputSink"></a><p> 172<table width="100%" cellpadding="2" cellspacing="0" border="0"> 173 <tr> 174 <td class="md"> 175 <table cellpadding="0" cellspacing="0" border="0"> 176 <tr> 177 <td class="md" nowrap valign="top"> typedef TIDY_STRUCT struct <a class="el" href="struct__TidyOutputSink.html">_TidyOutputSink</a> TidyOutputSink 178 </table> 179 </td> 180 </tr> 181</table> 182<table cellspacing=5 cellpadding=0 border=0> 183 <tr> 184 <td> 185 186 </td> 187 <td> 188 189<p> 190TidyOutputSink - accepts raw bytes of output </td> 191 </tr> 192</table> 193<a name="a6" doxytag="tidy.h::TidyReportFilter"></a><p> 194<table width="100%" cellpadding="2" cellspacing="0" border="0"> 195 <tr> 196 <td class="md"> 197 <table cellpadding="0" cellspacing="0" border="0"> 198 <tr> 199 <td class="md" nowrap valign="top"> typedef Bool(* TidyReportFilter)( <a class="el" href="structTidyDoc.html">TidyDoc</a> tdoc, <a class="el" href="tidyenum_8h.html#a401">TidyReportLevel</a> lvl, uint line, uint col, ctmbstr mssg ) 200 </table> 201 </td> 202 </tr> 203</table> 204<table cellspacing=5 cellpadding=0 border=0> 205 <tr> 206 <td> 207 208 </td> 209 <td> 210 211<p> 212Callback to filter messages by diagnostic level: info, warning, etc. Just set diagnostic output handler to redirect all diagnostics output. Return true to proceed with output, false to cancel. </td> 213 </tr> 214</table> 215<hr><h2>Function Documentation</h2> 216<a name="a7" doxytag="tidy.h::tidyInitSource"></a><p> 217<table width="100%" cellpadding="2" cellspacing="0" border="0"> 218 <tr> 219 <td class="md"> 220 <table cellpadding="0" cellspacing="0" border="0"> 221 <tr> 222 <td class="md" nowrap valign="top"> Bool tidyInitSource </td> 223 <td class="md" valign="top">( </td> 224 <td class="md" nowrap valign="top"><a class="el" href="group__IO.html#a3">TidyInputSource</a> * </td> 225 <td class="mdname" nowrap> <em>source</em>, </td> 226 </tr> 227 <tr> 228 <td></td> 229 <td></td> 230 <td class="md" nowrap>void * </td> 231 <td class="mdname" nowrap> <em>srcData</em>, </td> 232 </tr> 233 <tr> 234 <td></td> 235 <td></td> 236 <td class="md" nowrap><a class="el" href="group__IO.html#a0">TidyGetByteFunc</a> </td> 237 <td class="mdname" nowrap> <em>gbFunc</em>, </td> 238 </tr> 239 <tr> 240 <td></td> 241 <td></td> 242 <td class="md" nowrap><a class="el" href="group__IO.html#a1">TidyUngetByteFunc</a> </td> 243 <td class="mdname" nowrap> <em>ugbFunc</em>, </td> 244 </tr> 245 <tr> 246 <td></td> 247 <td></td> 248 <td class="md" nowrap><a class="el" href="group__IO.html#a2">TidyEOFFunc</a> </td> 249 <td class="mdname" nowrap> <em>endFunc</em></td> 250 </tr> 251 <tr> 252 <td></td> 253 <td class="md">) </td> 254 <td class="md" colspan="2"></td> 255 </tr> 256 257 </table> 258 </td> 259 </tr> 260</table> 261<table cellspacing=5 cellpadding=0 border=0> 262 <tr> 263 <td> 264 265 </td> 266 <td> 267 268<p> 269Facilitates user defined source by providing an entry point to marshal pointers-to-functions. Needed by .NET and possibly other language bindings. </td> 270 </tr> 271</table> 272<a name="a8" doxytag="tidy.h::tidyGetByte"></a><p> 273<table width="100%" cellpadding="2" cellspacing="0" border="0"> 274 <tr> 275 <td class="md"> 276 <table cellpadding="0" cellspacing="0" border="0"> 277 <tr> 278 <td class="md" nowrap valign="top"> uint tidyGetByte </td> 279 <td class="md" valign="top">( </td> 280 <td class="md" nowrap valign="top"><a class="el" href="group__IO.html#a3">TidyInputSource</a> * </td> 281 <td class="mdname1" valign="top" nowrap> <em>source</em> </td> 282 <td class="md" valign="top">) </td> 283 <td class="md" nowrap></td> 284 </tr> 285 286 </table> 287 </td> 288 </tr> 289</table> 290<table cellspacing=5 cellpadding=0 border=0> 291 <tr> 292 <td> 293 294 </td> 295 <td> 296 297<p> 298Helper: get next byte from input source </td> 299 </tr> 300</table> 301<a name="a9" doxytag="tidy.h::tidyUngetByte"></a><p> 302<table width="100%" cellpadding="2" cellspacing="0" border="0"> 303 <tr> 304 <td class="md"> 305 <table cellpadding="0" cellspacing="0" border="0"> 306 <tr> 307 <td class="md" nowrap valign="top"> void tidyUngetByte </td> 308 <td class="md" valign="top">( </td> 309 <td class="md" nowrap valign="top"><a class="el" href="group__IO.html#a3">TidyInputSource</a> * </td> 310 <td class="mdname" nowrap> <em>source</em>, </td> 311 </tr> 312 <tr> 313 <td></td> 314 <td></td> 315 <td class="md" nowrap>uint </td> 316 <td class="mdname" nowrap> <em>byteValue</em></td> 317 </tr> 318 <tr> 319 <td></td> 320 <td class="md">) </td> 321 <td class="md" colspan="2"></td> 322 </tr> 323 324 </table> 325 </td> 326 </tr> 327</table> 328<table cellspacing=5 cellpadding=0 border=0> 329 <tr> 330 <td> 331 332 </td> 333 <td> 334 335<p> 336Helper: unget byte back to input source </td> 337 </tr> 338</table> 339<a name="a10" doxytag="tidy.h::tidyIsEOF"></a><p> 340<table width="100%" cellpadding="2" cellspacing="0" border="0"> 341 <tr> 342 <td class="md"> 343 <table cellpadding="0" cellspacing="0" border="0"> 344 <tr> 345 <td class="md" nowrap valign="top"> Bool tidyIsEOF </td> 346 <td class="md" valign="top">( </td> 347 <td class="md" nowrap valign="top"><a class="el" href="group__IO.html#a3">TidyInputSource</a> * </td> 348 <td class="mdname1" valign="top" nowrap> <em>source</em> </td> 349 <td class="md" valign="top">) </td> 350 <td class="md" nowrap></td> 351 </tr> 352 353 </table> 354 </td> 355 </tr> 356</table> 357<table cellspacing=5 cellpadding=0 border=0> 358 <tr> 359 <td> 360 361 </td> 362 <td> 363 364<p> 365Helper: check if input source at end </td> 366 </tr> 367</table> 368<a name="a11" doxytag="tidy.h::tidyInitSink"></a><p> 369<table width="100%" cellpadding="2" cellspacing="0" border="0"> 370 <tr> 371 <td class="md"> 372 <table cellpadding="0" cellspacing="0" border="0"> 373 <tr> 374 <td class="md" nowrap valign="top"> Bool tidyInitSink </td> 375 <td class="md" valign="top">( </td> 376 <td class="md" nowrap valign="top"><a class="el" href="group__IO.html#a5">TidyOutputSink</a> * </td> 377 <td class="mdname" nowrap> <em>sink</em>, </td> 378 </tr> 379 <tr> 380 <td></td> 381 <td></td> 382 <td class="md" nowrap>void * </td> 383 <td class="mdname" nowrap> <em>snkData</em>, </td> 384 </tr> 385 <tr> 386 <td></td> 387 <td></td> 388 <td class="md" nowrap><a class="el" href="group__IO.html#a4">TidyPutByteFunc</a> </td> 389 <td class="mdname" nowrap> <em>pbFunc</em></td> 390 </tr> 391 <tr> 392 <td></td> 393 <td class="md">) </td> 394 <td class="md" colspan="2"></td> 395 </tr> 396 397 </table> 398 </td> 399 </tr> 400</table> 401<table cellspacing=5 cellpadding=0 border=0> 402 <tr> 403 <td> 404 405 </td> 406 <td> 407 408<p> 409Facilitates user defined sinks by providing an entry point to marshal pointers-to-functions. Needed by .NET and possibly other language bindings. </td> 410 </tr> 411</table> 412<a name="a12" doxytag="tidy.h::tidyPutByte"></a><p> 413<table width="100%" cellpadding="2" cellspacing="0" border="0"> 414 <tr> 415 <td class="md"> 416 <table cellpadding="0" cellspacing="0" border="0"> 417 <tr> 418 <td class="md" nowrap valign="top"> void tidyPutByte </td> 419 <td class="md" valign="top">( </td> 420 <td class="md" nowrap valign="top"><a class="el" href="group__IO.html#a5">TidyOutputSink</a> * </td> 421 <td class="mdname" nowrap> <em>sink</em>, </td> 422 </tr> 423 <tr> 424 <td></td> 425 <td></td> 426 <td class="md" nowrap>uint </td> 427 <td class="mdname" nowrap> <em>byteValue</em></td> 428 </tr> 429 <tr> 430 <td></td> 431 <td class="md">) </td> 432 <td class="md" colspan="2"></td> 433 </tr> 434 435 </table> 436 </td> 437 </tr> 438</table> 439<table cellspacing=5 cellpadding=0 border=0> 440 <tr> 441 <td> 442 443 </td> 444 <td> 445 446<p> 447Helper: send a byte to output </td> 448 </tr> 449</table> 450<a name="a13" doxytag="tidy.h::tidySetReportFilter"></a><p> 451<table width="100%" cellpadding="2" cellspacing="0" border="0"> 452 <tr> 453 <td class="md"> 454 <table cellpadding="0" cellspacing="0" border="0"> 455 <tr> 456 <td class="md" nowrap valign="top"> Bool tidySetReportFilter </td> 457 <td class="md" valign="top">( </td> 458 <td class="md" nowrap valign="top"><a class="el" href="structTidyDoc.html">TidyDoc</a> </td> 459 <td class="mdname" nowrap> <em>tdoc</em>, </td> 460 </tr> 461 <tr> 462 <td></td> 463 <td></td> 464 <td class="md" nowrap><a class="el" href="group__IO.html#a6">TidyReportFilter</a> </td> 465 <td class="mdname" nowrap> <em>filtCallback</em></td> 466 </tr> 467 <tr> 468 <td></td> 469 <td class="md">) </td> 470 <td class="md" colspan="2"></td> 471 </tr> 472 473 </table> 474 </td> 475 </tr> 476</table> 477<table cellspacing=5 cellpadding=0 border=0> 478 <tr> 479 <td> 480 481 </td> 482 <td> 483 484<p> 485Give Tidy a filter callback to use </td> 486 </tr> 487</table> 488<a name="a14" doxytag="tidy.h::tidySetErrorFile"></a><p> 489<table width="100%" cellpadding="2" cellspacing="0" border="0"> 490 <tr> 491 <td class="md"> 492 <table cellpadding="0" cellspacing="0" border="0"> 493 <tr> 494 <td class="md" nowrap valign="top"> FILE* tidySetErrorFile </td> 495 <td class="md" valign="top">( </td> 496 <td class="md" nowrap valign="top"><a class="el" href="structTidyDoc.html">TidyDoc</a> </td> 497 <td class="mdname" nowrap> <em>tdoc</em>, </td> 498 </tr> 499 <tr> 500 <td></td> 501 <td></td> 502 <td class="md" nowrap>ctmbstr </td> 503 <td class="mdname" nowrap> <em>errfilnam</em></td> 504 </tr> 505 <tr> 506 <td></td> 507 <td class="md">) </td> 508 <td class="md" colspan="2"></td> 509 </tr> 510 511 </table> 512 </td> 513 </tr> 514</table> 515<table cellspacing=5 cellpadding=0 border=0> 516 <tr> 517 <td> 518 519 </td> 520 <td> 521 522<p> 523Set error sink to named file </td> 524 </tr> 525</table> 526<a name="a15" doxytag="tidy.h::tidySetErrorBuffer"></a><p> 527<table width="100%" cellpadding="2" cellspacing="0" border="0"> 528 <tr> 529 <td class="md"> 530 <table cellpadding="0" cellspacing="0" border="0"> 531 <tr> 532 <td class="md" nowrap valign="top"> int tidySetErrorBuffer </td> 533 <td class="md" valign="top">( </td> 534 <td class="md" nowrap valign="top"><a class="el" href="structTidyDoc.html">TidyDoc</a> </td> 535 <td class="mdname" nowrap> <em>tdoc</em>, </td> 536 </tr> 537 <tr> 538 <td></td> 539 <td></td> 540 <td class="md" nowrap>TidyBuffer * </td> 541 <td class="mdname" nowrap> <em>errbuf</em></td> 542 </tr> 543 <tr> 544 <td></td> 545 <td class="md">) </td> 546 <td class="md" colspan="2"></td> 547 </tr> 548 549 </table> 550 </td> 551 </tr> 552</table> 553<table cellspacing=5 cellpadding=0 border=0> 554 <tr> 555 <td> 556 557 </td> 558 <td> 559 560<p> 561Set error sink to given buffer </td> 562 </tr> 563</table> 564<a name="a16" doxytag="tidy.h::tidySetErrorSink"></a><p> 565<table width="100%" cellpadding="2" cellspacing="0" border="0"> 566 <tr> 567 <td class="md"> 568 <table cellpadding="0" cellspacing="0" border="0"> 569 <tr> 570 <td class="md" nowrap valign="top"> int tidySetErrorSink </td> 571 <td class="md" valign="top">( </td> 572 <td class="md" nowrap valign="top"><a class="el" href="structTidyDoc.html">TidyDoc</a> </td> 573 <td class="mdname" nowrap> <em>tdoc</em>, </td> 574 </tr> 575 <tr> 576 <td></td> 577 <td></td> 578 <td class="md" nowrap><a class="el" href="group__IO.html#a5">TidyOutputSink</a> * </td> 579 <td class="mdname" nowrap> <em>sink</em></td> 580 </tr> 581 <tr> 582 <td></td> 583 <td class="md">) </td> 584 <td class="md" colspan="2"></td> 585 </tr> 586 587 </table> 588 </td> 589 </tr> 590</table> 591<table cellspacing=5 cellpadding=0 border=0> 592 <tr> 593 <td> 594 595 </td> 596 <td> 597 598<p> 599Set error sink to given generic sink </td> 600 </tr> 601</table> 602<hr><address style="align: right;"><small>Generated on Fri Dec 13 18:27:08 2002 for HTML Tidy by 603<a href="http://www.doxygen.org/index.html"> 604<img src="doxygen.png" alt="doxygen" align="middle" border=0 605width=110 height=53></a>1.2.17 </small></address> 606</body> 607</html> 608