blob: ab2c60ed118cf8e86f544b72eafa68a9022be20b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>oscl_exception.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.18 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; </center>
<hr><h1>oscl_exception.h File Reference</h1>contains all the exception handling macros and classes
<a href="#_details">More...</a>
<p>
<code>#include "<a class="el" href="oscl__error_8h-source.html">oscl_error.h</a>"</code><br>
<code>#include "<a class="el" href="oscl__error__imp_8h-source.html">oscl_error_imp.h</a>"</code><br>
<p>
<a href="oscl__exception_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Data Structures</h2></td></tr>
<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="classOsclException.html">OsclException</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em><a class="el" href="oscl__exception_8h.html">oscl_exception.h</a> contains all the exception handling macros and classes This template class provides the base exception class that all exceptions derive from</em> <a href="classOsclException.html#_details">More...</a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Defines</h2></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a46">OSCL_LEAVE</a>(_leave_status)&nbsp;&nbsp;&nbsp;OsclError::Leave(_leave_status)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Use this macro to cause a Leave. It terminates the execution of the current active function.</em> <a href="group__osclerror.html#a46"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a47">OSCL_TRY</a>(_leave_status, _statements)&nbsp;&nbsp;&nbsp;_PV_TRAP(_leave_status,_statements)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This macro will be used to set up a try block.</em> <a href="group__osclerror.html#a47"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a48">OSCL_TRY_NO_TLS</a>(__trapimp, _leave_status, _statements)&nbsp;&nbsp;&nbsp;_PV_TRAP_NO_TLS(__trapimp,_leave_status,_statements)</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a49">OSCL_FIRST_CATCH_ANY</a>(_leave_status, _statements)&nbsp;&nbsp;&nbsp;if (_leave_status!=OsclErrNone) { _statements; }</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>This section defines the macros to be used in the catch block following the try block Use this macro to call a function that handles all exception types thrown in the preceding try block.</em> <a href="group__osclerror.html#a49"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a50">OSCL_FIRST_CATCH</a>(_leave_status, _catch_value, _statements)&nbsp;&nbsp;&nbsp;if (_leave_status!=OsclErrNone &amp;&amp; _leave_status == _catch_value){_statements;}</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Use this macro to define a block of code that catches the first exception type thrown in the preceding try block.</em> <a href="group__osclerror.html#a50"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a51">OSCL_CATCH</a>(_leave_status, _catch_value, _statements)&nbsp;&nbsp;&nbsp;else if (_leave_status!=OsclErrNone &amp;&amp; _leave_status == _catch_value){_statements;}</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Use this macro to define a block of code for catching additional exception types.</em> <a href="group__osclerror.html#a51"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a52">OSCL_CATCH_ANY</a>(_leave_status, _statements)&nbsp;&nbsp;&nbsp;else if (_leave_status!=OsclErrNone){ _statements;}</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Use this macro to call a function that will catch all remaining exception types.</em> <a href="group__osclerror.html#a52"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group__osclerror.html#a53">OSCL_LAST_CATCH</a>(_leave_status)&nbsp;&nbsp;&nbsp;else if (_leave_status!=OsclErrNone){OSCL_LEAVE(_leave_status);}</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Use this macro if OSCL_CATCH_ANY has not been used. It will mark the end of the catch block.</em> <a href="group__osclerror.html#a53"></a><em></em></font><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
contains all the exception handling macros and classes
<p>
<p>
<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
<address style="align: left;"><small>Posting Version: OPENCORE_20090120 </small>
</small></address>
</body>
</html>