File: scopeguard_8h.html

package info (click to toggle)
wxpython3.0 3.0.2.0%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 482,760 kB
  • ctags: 518,293
  • sloc: cpp: 2,127,226; python: 294,045; makefile: 51,942; ansic: 19,033; sh: 3,013; xml: 1,629; perl: 17
file content (128 lines) | stat: -rw-r--r-- 13,633 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>wxWidgets: interface/wx/scopeguard.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra_stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="page_container">
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" style="width: 100%;">
 <tbody>
 <tr>
  <td id="projectlogo">
    <a href="http://www.wxwidgets.org/" target="_new">
      <img alt="wxWidgets" src="logo.png"/>
    </a>
  </td>
  <td style="padding-left: 0.5em; text-align: right;">
   <span id="projectnumber">Version: 3.0.2</span>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- Generated by Doxygen 1.8.2 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Categories</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_60feedc7276cc318b43f4d4f48ac8f8e.html">interface</a></li><li class="navelem"><a class="el" href="dir_4fb5f442218c03949e30a92e7978b03f.html">wx</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">scopeguard.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_scope_guard.html">wxScopeGuard</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scope guard is an object which allows executing an action on scope exit.  <a href="classwx_scope_guard.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gac35c626f7edf136246256edd765dcb48"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gac35c626f7edf136246256edd765dcb48">wxON_BLOCK_EXIT</a>(function,...)</td></tr>
<tr class="memdesc:gac35c626f7edf136246256edd765dcb48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ensure that the global <em>function</em> with a few (up to some implementation-defined limit) is executed on scope exit, whether due to a normal function return or because an exception has been thrown.  <a href="group__group__funcmacro__misc.html#gac35c626f7edf136246256edd765dcb48"></a><br/></td></tr>
<tr class="separator:gac35c626f7edf136246256edd765dcb48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga39062f9f9053571c0cccc13d3b0f5069"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga39062f9f9053571c0cccc13d3b0f5069">wxON_BLOCK_EXIT0</a>(function)</td></tr>
<tr class="separator:ga39062f9f9053571c0cccc13d3b0f5069"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5afb56ecc6c60e4e9e59c5944297abe5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga5afb56ecc6c60e4e9e59c5944297abe5">wxON_BLOCK_EXIT1</a>(function, p1)</td></tr>
<tr class="separator:ga5afb56ecc6c60e4e9e59c5944297abe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga567d271a9fa3684cbbe3a163a60ed911"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga567d271a9fa3684cbbe3a163a60ed911">wxON_BLOCK_EXIT2</a>(function, p1, p2)</td></tr>
<tr class="separator:ga567d271a9fa3684cbbe3a163a60ed911"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadd21bc55d59bbc2866bb6ff7f9c11467"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gadd21bc55d59bbc2866bb6ff7f9c11467">wxON_BLOCK_EXIT3</a>(function, p1, p2, p3)</td></tr>
<tr class="separator:gadd21bc55d59bbc2866bb6ff7f9c11467"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga540ef8a7d02d2eb817e930ac83f8963d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga540ef8a7d02d2eb817e930ac83f8963d">wxON_BLOCK_EXIT_OBJ</a>(object, method,...)</td></tr>
<tr class="memdesc:ga540ef8a7d02d2eb817e930ac83f8963d"><td class="mdescLeft">&#160;</td><td class="mdescRight">This family of macros is similar to <a class="el" href="group__group__funcmacro__misc.html#gac35c626f7edf136246256edd765dcb48" title="Ensure that the global function with a few (up to some implementation-defined limit) is executed on s...">wxON_BLOCK_EXIT()</a>, but calls a method of the given object instead of a free function.  <a href="group__group__funcmacro__misc.html#ga540ef8a7d02d2eb817e930ac83f8963d"></a><br/></td></tr>
<tr class="separator:ga540ef8a7d02d2eb817e930ac83f8963d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaae97c094a796b8e1bc78efbc325a99cb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gaae97c094a796b8e1bc78efbc325a99cb">wxON_BLOCK_EXIT_OBJ0</a>(object, method)</td></tr>
<tr class="separator:gaae97c094a796b8e1bc78efbc325a99cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga86ff0ebb48b26dc585e52830652c9ed1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga86ff0ebb48b26dc585e52830652c9ed1">wxON_BLOCK_EXIT_OBJ1</a>(object, method, p1)</td></tr>
<tr class="separator:ga86ff0ebb48b26dc585e52830652c9ed1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga58dff6a81f9ecf96d9d7271401017f21"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga58dff6a81f9ecf96d9d7271401017f21">wxON_BLOCK_EXIT_OBJ2</a>(object, method, p1, p2)</td></tr>
<tr class="separator:ga58dff6a81f9ecf96d9d7271401017f21"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga762ab2b3f681de2a4a6ab5e5db4709ae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga762ab2b3f681de2a4a6ab5e5db4709ae">wxON_BLOCK_EXIT_OBJ3</a>(object, method, p1, p2, p3)</td></tr>
<tr class="separator:ga762ab2b3f681de2a4a6ab5e5db4709ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab6e20c8cff9879e49a6b7580901ee1e0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gab6e20c8cff9879e49a6b7580901ee1e0">wxON_BLOCK_EXIT_THIS</a>(method,...)</td></tr>
<tr class="memdesc:gab6e20c8cff9879e49a6b7580901ee1e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">This family of macros is similar to wxON_BLOCK_OBJ(), but calls a method of <code>this</code> object instead of a method of the specified object.  <a href="group__group__funcmacro__misc.html#gab6e20c8cff9879e49a6b7580901ee1e0"></a><br/></td></tr>
<tr class="separator:gab6e20c8cff9879e49a6b7580901ee1e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5e3c89d3ac3eb12dd67858b24a85d7e8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga5e3c89d3ac3eb12dd67858b24a85d7e8">wxON_BLOCK_EXIT_THIS0</a>(method)</td></tr>
<tr class="separator:ga5e3c89d3ac3eb12dd67858b24a85d7e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga45f3a4d43346d93549d684903825f2ad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga45f3a4d43346d93549d684903825f2ad">wxON_BLOCK_EXIT_THIS1</a>(method, p1)</td></tr>
<tr class="separator:ga45f3a4d43346d93549d684903825f2ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaef79a24750acd4dfa1cb490236977930"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gaef79a24750acd4dfa1cb490236977930">wxON_BLOCK_EXIT_THIS2</a>(method, p1, p2)</td></tr>
<tr class="separator:gaef79a24750acd4dfa1cb490236977930"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9c3d4e9192f82e082dfe9db562481dca"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#ga9c3d4e9192f82e082dfe9db562481dca">wxON_BLOCK_EXIT_THIS3</a>(method, p1, p2, p3)</td></tr>
<tr class="separator:ga9c3d4e9192f82e082dfe9db562481dca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae42b17d61096fa9aad54dbf329d44372"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gae42b17d61096fa9aad54dbf329d44372">wxON_BLOCK_EXIT_SET</a>(var, value)</td></tr>
<tr class="memdesc:gae42b17d61096fa9aad54dbf329d44372"><td class="mdescLeft">&#160;</td><td class="mdescRight">This macro sets a variable to the specified value on scope exit.  <a href="group__group__funcmacro__misc.html#gae42b17d61096fa9aad54dbf329d44372"></a><br/></td></tr>
<tr class="separator:gae42b17d61096fa9aad54dbf329d44372"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabe8231ac62cf9cf4486fe53eec49195a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gabe8231ac62cf9cf4486fe53eec49195a">wxON_BLOCK_EXIT_NULL</a>(ptr)</td></tr>
<tr class="memdesc:gabe8231ac62cf9cf4486fe53eec49195a"><td class="mdescLeft">&#160;</td><td class="mdescRight">This macro sets the pointer passed to it as argument to NULL on scope exit.  <a href="group__group__funcmacro__misc.html#gabe8231ac62cf9cf4486fe53eec49195a"></a><br/></td></tr>
<tr class="separator:gabe8231ac62cf9cf4486fe53eec49195a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gae3c4e71b9eb7d1bf7b7cf2eee1832796"><td class="memTemplParams" colspan="2">template&lt;typename F , typename P1 , ... , typename PN &gt; </td></tr>
<tr class="memitem:gae3c4e71b9eb7d1bf7b7cf2eee1832796"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classwx_scope_guard.html">wxScopeGuard</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__group__funcmacro__misc.html#gae3c4e71b9eb7d1bf7b7cf2eee1832796">wxMakeGuard</a> (F func, P1 p1,..., PN pN)</td></tr>
<tr class="memdesc:gae3c4e71b9eb7d1bf7b7cf2eee1832796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a scope guard object which will call the specified function with the given parameters on scope exit.  <a href="group__group__funcmacro__misc.html#gae3c4e71b9eb7d1bf7b7cf2eee1832796"></a><br/></td></tr>
<tr class="separator:gae3c4e71b9eb7d1bf7b7cf2eee1832796"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->

<address class="footer">
	<small>
		Generated on Thu Nov 27 2014 13:46:41 for wxWidgets by <a href="http://www.doxygen.org/index.html" target="_new">Doxygen</a> 1.8.2
	</small>
</address>
<script src="wxwidgets.js" type="text/javascript"></script>
</div><!-- #page_container -->
</body>
</html>