<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Xerces-C++: PanicHandler Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.6 --> <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 class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> </div> <div class="contents"> <h1>PanicHandler Class Reference</h1><!-- doxytag: class="PanicHandler" -->Receive notification of panic. <a href="#_details">More...</a> <p> <div class="dynheader"> Inheritance diagram for PanicHandler:</div> <div class="dynsection"> <p><center><img src="classPanicHandler.png" usemap="#PanicHandler_map" border="0" alt=""></center> <map name="PanicHandler_map"> <area href="classDefaultPanicHandler.html" alt="DefaultPanicHandler" shape="rect" coords="0,56,129,80"> </map> </div> <p> <a href="classPanicHandler-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>hidden Constructors</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classPanicHandler.html#b2bc634b10a94f9cef4ba1e95a911c8c">PanicHandler</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <a href="#b2bc634b10a94f9cef4ba1e95a911c8c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classPanicHandler.html#c7fad72aeffdcf733ae3c2bdf7fe9605">~PanicHandler</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#c7fad72aeffdcf733ae3c2bdf7fe9605"></a><br></td></tr> <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> <tr><td colspan="2"><div class="groupHeader">Public Types</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2">PanicReasons</a> { <br> <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be22430bd8f71401367e30fe158b3a2a9d1">Panic_NoTransService</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be224249426c2224e2738415715aa288dcf">Panic_NoDefTranscoder</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be233e71b542dd1c65a9847622b22f3f390">Panic_CantFindLib</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be208eadb74b6e54655f9d33382464127e5">Panic_UnknownMsgDomain</a>, <br> <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be26ddb16a86f54a832a08bf9580190bae3">Panic_CantLoadMsgDomain</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2b89078a5505dcd40b96463dd080393d5">Panic_SynchronizationErr</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2a4960fce81ac6da9aa0049a7d50df3e8">Panic_SystemInit</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be225beb3014f563286fbf0b02856eb60bc">Panic_AllStaticInitErr</a>, <br> <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2fb6c672288085736787e5d0d9ce43a84">Panic_MutexErr</a>, <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be21d01eea19718d4796472d949dcf43237">PanicReasons_Count</a> <br> }</td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td colspan="2"><div class="groupHeader">The virtual panic handler interface</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classPanicHandler.html#8cf11f9bba7395f8bdca47103c8f06bd">panic</a> (const <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2">PanicHandler::PanicReasons</a> reason)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Receive notification of panic. <a href="#8cf11f9bba7395f8bdca47103c8f06bd"></a><br></td></tr> <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classPanicHandler.html#1697ada99db00b56afb1f8355e5d90b4">getPanicReasonString</a> (const <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2">PanicHandler::PanicReasons</a> reason)</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Receive notification of panic. <p> This is the interface, through which the Xercesc reports a panic to the application. <p> Application may implement this interface, instantiate an object of the derivative, and plug it to Xercesc in the invocation to <a class="el" href="classXMLPlatformUtils.html#aa98f8d1346b8b531ee8886d9ce36173" title="Perform per-process parser initialization.">XMLPlatformUtils::Initialize()</a>, if it prefers to handling panic itself rather than Xercesc doing it. <hr><h2>Member Enumeration Documentation</h2> <a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be2"></a><!-- doxytag: member="PanicHandler::PanicReasons" ref="ace4c4f408d68f168e1c2537e0ba5be2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2">PanicHandler::PanicReasons</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be22430bd8f71401367e30fe158b3a2a9d1"></a><!-- doxytag: member="Panic_NoTransService" ref="ace4c4f408d68f168e1c2537e0ba5be22430bd8f71401367e30fe158b3a2a9d1" args="" -->Panic_NoTransService</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be224249426c2224e2738415715aa288dcf"></a><!-- doxytag: member="Panic_NoDefTranscoder" ref="ace4c4f408d68f168e1c2537e0ba5be224249426c2224e2738415715aa288dcf" args="" -->Panic_NoDefTranscoder</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be233e71b542dd1c65a9847622b22f3f390"></a><!-- doxytag: member="Panic_CantFindLib" ref="ace4c4f408d68f168e1c2537e0ba5be233e71b542dd1c65a9847622b22f3f390" args="" -->Panic_CantFindLib</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be208eadb74b6e54655f9d33382464127e5"></a><!-- doxytag: member="Panic_UnknownMsgDomain" ref="ace4c4f408d68f168e1c2537e0ba5be208eadb74b6e54655f9d33382464127e5" args="" -->Panic_UnknownMsgDomain</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be26ddb16a86f54a832a08bf9580190bae3"></a><!-- doxytag: member="Panic_CantLoadMsgDomain" ref="ace4c4f408d68f168e1c2537e0ba5be26ddb16a86f54a832a08bf9580190bae3" args="" -->Panic_CantLoadMsgDomain</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be2b89078a5505dcd40b96463dd080393d5"></a><!-- doxytag: member="Panic_SynchronizationErr" ref="ace4c4f408d68f168e1c2537e0ba5be2b89078a5505dcd40b96463dd080393d5" args="" -->Panic_SynchronizationErr</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be2a4960fce81ac6da9aa0049a7d50df3e8"></a><!-- doxytag: member="Panic_SystemInit" ref="ace4c4f408d68f168e1c2537e0ba5be2a4960fce81ac6da9aa0049a7d50df3e8" args="" -->Panic_SystemInit</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be225beb3014f563286fbf0b02856eb60bc"></a><!-- doxytag: member="Panic_AllStaticInitErr" ref="ace4c4f408d68f168e1c2537e0ba5be225beb3014f563286fbf0b02856eb60bc" args="" -->Panic_AllStaticInitErr</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be2fb6c672288085736787e5d0d9ce43a84"></a><!-- doxytag: member="Panic_MutexErr" ref="ace4c4f408d68f168e1c2537e0ba5be2fb6c672288085736787e5d0d9ce43a84" args="" -->Panic_MutexErr</em> </td><td> </td></tr> <tr><td valign="top"><em><a class="anchor" name="ace4c4f408d68f168e1c2537e0ba5be21d01eea19718d4796472d949dcf43237"></a><!-- doxytag: member="PanicReasons_Count" ref="ace4c4f408d68f168e1c2537e0ba5be21d01eea19718d4796472d949dcf43237" args="" -->PanicReasons_Count</em> </td><td> </td></tr> </table> </dl> </div> </div><p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="b2bc634b10a94f9cef4ba1e95a911c8c"></a><!-- doxytag: member="PanicHandler::PanicHandler" ref="b2bc634b10a94f9cef4ba1e95a911c8c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">PanicHandler::PanicHandler </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Default constructor. <p> </div> </div><p> <a class="anchor" name="c7fad72aeffdcf733ae3c2bdf7fe9605"></a><!-- doxytag: member="PanicHandler::~PanicHandler" ref="c7fad72aeffdcf733ae3c2bdf7fe9605" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual PanicHandler::~PanicHandler </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor. <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="8cf11f9bba7395f8bdca47103c8f06bd"></a><!-- doxytag: member="PanicHandler::panic" ref="8cf11f9bba7395f8bdca47103c8f06bd" args="(const PanicHandler::PanicReasons reason)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void PanicHandler::panic </td> <td>(</td> <td class="paramtype">const <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2">PanicHandler::PanicReasons</a> </td> <td class="paramname"> <em>reason</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Receive notification of panic. <p> This method is called when an unrecoverable error has occurred in the Xerces library.<p> This method must not return normally, otherwise, the results are undefined.<p> Ways of handling this call could include throwing an exception or exiting the process.<p> Once this method has been called, the results of calling any other Xerces API, or using any existing Xerces objects are undefined.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>reason</em> </td><td>The reason of panic </td></tr> </table> </dl> <p>Implemented in <a class="el" href="classDefaultPanicHandler.html#8a47168786acceed06ef64b188211df4">DefaultPanicHandler</a>.</p> </div> </div><p> <a class="anchor" name="1697ada99db00b56afb1f8355e5d90b4"></a><!-- doxytag: member="PanicHandler::getPanicReasonString" ref="1697ada99db00b56afb1f8355e5d90b4" args="(const PanicHandler::PanicReasons reason)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static const char* PanicHandler::getPanicReasonString </td> <td>(</td> <td class="paramtype">const <a class="el" href="classPanicHandler.html#ace4c4f408d68f168e1c2537e0ba5be2">PanicHandler::PanicReasons</a> </td> <td class="paramname"> <em>reason</em> </td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="PanicHandler_8hpp-source.html">PanicHandler.hpp</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Fri Jan 29 15:30:49 2010 for Xerces-C++ by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address> </body> </html>