1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3
<title>schroot: schroot_releaselock::main Class Reference</title>
4
<link href="tabs.css" rel="stylesheet" type="text/css">
5
<link href="doxygen.css" rel="stylesheet" type="text/css">
7
<!-- Generated by Doxygen 1.5.9 -->
8
<div class="navigation" id="top">
11
<li><a href="index.html"><span>Main Page</span></a></li>
12
<li><a href="pages.html"><span>Related Pages</span></a></li>
13
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
14
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
15
<li><a href="files.html"><span>Files</span></a></li>
16
<li><a href="dirs.html"><span>Directories</span></a></li>
21
<li><a href="annotated.html"><span>Class List</span></a></li>
22
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
23
<li><a href="functions.html"><span>Class Members</span></a></li>
26
<div class="navpath"><a class="el" href="namespaceschroot__releaselock.html">schroot_releaselock</a>::<a class="el" href="classschroot__releaselock_1_1main.html">main</a>
29
<div class="contents">
30
<h1>schroot_releaselock::main Class Reference</h1><!-- doxytag: class="schroot_releaselock::main" --><!-- doxytag: inherits="schroot_base::main" -->Frontend for <a class="el" href="namespaceschroot.html">schroot</a>.
31
<a href="#_details">More...</a>
33
<code>#include <<a class="el" href="schroot-releaselock-main_8h_source.html">schroot-releaselock-main.h</a>></code>
35
<div class="dynheader">
36
Inheritance diagram for schroot_releaselock::main:</div>
37
<div class="dynsection">
38
<p><center><img src="classschroot__releaselock_1_1main__inherit__graph.png" border="0" usemap="#schroot__releaselock_1_1main__inherit__map" alt="Inheritance graph"></center>
39
<map name="schroot__releaselock_1_1main__inherit__map">
40
<area shape="rect" href="classschroot__base_1_1main.html" title="Frontend base for schroot programs." alt="" coords="24,5,160,35"></map>
41
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
42
<div class="dynheader">
43
Collaboration diagram for schroot_releaselock::main:</div>
44
<div class="dynsection">
45
<p><center><img src="classschroot__releaselock_1_1main__coll__graph.png" border="0" usemap="#schroot__releaselock_1_1main__coll__map" alt="Collaboration graph"></center>
46
<map name="schroot__releaselock_1_1main__coll__map">
47
<area shape="rect" href="classschroot__base_1_1main.html" title="Frontend base for schroot programs." alt="" coords="24,200,160,229"><area shape="rect" title="STL class." alt="" coords="52,85,132,115"><area shape="rect" title="STL class." alt="" coords="13,5,171,35"></map>
48
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
51
<a href="classschroot__releaselock_1_1main-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
53
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
54
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a">error_code</a> { <a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a17198d5ffeb8e647f19c8af56b560505">DEVICE_NOTBLOCK</a>,
55
<a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327af6276d5f8e05e1739491574f522c47e2">DEVICE_OWNED</a>,
56
<a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a0255ab6c98d58b41dbcfcfde7a766afd">DEVICE_RELEASE</a>,
57
<a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327aa456b2bd45e13ab2e3977aecac0e2581">DEVICE_STAT</a>
60
<tr><td class="mdescLeft"> </td><td class="mdescRight">Error codes. <a href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a">More...</a><br></td></tr>
61
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef sbuild::custom_error<br class="typebreak">
62
< <a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a">error_code</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#da5ddaa44e546fcd0fd45ae5c3d4ca32">error</a></td></tr>
64
<tr><td class="mdescLeft"> </td><td class="mdescRight">Exception type. <a href="#da5ddaa44e546fcd0fd45ae5c3d4ca32"></a><br></td></tr>
65
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
66
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#e677b87c3fb420faf53007994ac8b6af">main</a> (<a class="el" href="classschroot__releaselock_1_1options.html#78a30d60c6ced783d23712c6f5ca14e3">options::ptr</a> &<a class="el" href="classschroot__releaselock_1_1options.html">options</a>)</td></tr>
68
<tr><td class="mdescLeft"> </td><td class="mdescRight">The constructor. <a href="#e677b87c3fb420faf53007994ac8b6af"></a><br></td></tr>
69
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#4444e261c1a635e1aab12e00e5b95f5a">~main</a> ()</td></tr>
71
<tr><td class="mdescLeft"> </td><td class="mdescRight">The destructor. <a href="#4444e261c1a635e1aab12e00e5b95f5a"></a><br></td></tr>
72
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#185e8efd89954f3d64f86f236871e913">action_releaselock</a> ()</td></tr>
74
<tr><td class="mdescLeft"> </td><td class="mdescRight">Release lock. <a href="#185e8efd89954f3d64f86f236871e913"></a><br></td></tr>
75
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#266e0d62ec45cb0c73b03d277205fe8a">run_impl</a> ()</td></tr>
77
<tr><td class="mdescLeft"> </td><td class="mdescRight">Run the program. <a href="#266e0d62ec45cb0c73b03d277205fe8a"></a><br></td></tr>
78
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
79
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classschroot__releaselock_1_1options.html#78a30d60c6ced783d23712c6f5ca14e3">options::ptr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classschroot__releaselock_1_1main.html#71c50ebd9ffd0349faf65e66cbc2054a">opts</a></td></tr>
81
<tr><td class="mdescLeft"> </td><td class="mdescRight">The program <a class="el" href="classschroot__releaselock_1_1options.html" title="schroot-releaselock command-line options.">options</a>. <a href="#71c50ebd9ffd0349faf65e66cbc2054a"></a><br></td></tr>
83
<hr><a name="_details"></a><h2>Detailed Description</h2>
84
Frontend for <a class="el" href="namespaceschroot.html">schroot</a>.
86
This class is used to "run" <a class="el" href="namespaceschroot.html">schroot</a>. <hr><h2>Member Typedef Documentation</h2>
87
<a class="anchor" name="da5ddaa44e546fcd0fd45ae5c3d4ca32"></a><!-- doxytag: member="schroot_releaselock::main::error" ref="da5ddaa44e546fcd0fd45ae5c3d4ca32" args="" -->
89
<div class="memproto">
90
<table class="memname">
92
<td class="memname">typedef sbuild::custom_error<<a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a">error_code</a>> <a class="el" href="classschroot__releaselock_1_1main.html#da5ddaa44e546fcd0fd45ae5c3d4ca32">schroot_releaselock::main::error</a> </td>
104
<hr><h2>Member Enumeration Documentation</h2>
105
<a class="anchor" name="df65ee864a2fd030170b46c4f32d327a"></a><!-- doxytag: member="schroot_releaselock::main::error_code" ref="df65ee864a2fd030170b46c4f32d327a" args="" -->
106
<div class="memitem">
107
<div class="memproto">
108
<table class="memname">
110
<td class="memname">enum <a class="el" href="classschroot__releaselock_1_1main.html#df65ee864a2fd030170b46c4f32d327a">schroot_releaselock::main::error_code</a> </td>
119
<dl compact><dt><b>Enumerator: </b></dt><dd>
120
<table border="0" cellspacing="2" cellpadding="0">
121
<tr><td valign="top"><em><a class="anchor" name="df65ee864a2fd030170b46c4f32d327a17198d5ffeb8e647f19c8af56b560505"></a><!-- doxytag: member="DEVICE_NOTBLOCK" ref="df65ee864a2fd030170b46c4f32d327a17198d5ffeb8e647f19c8af56b560505" args="" -->DEVICE_NOTBLOCK</em> </td><td>
122
File is not a block device. </td></tr>
123
<tr><td valign="top"><em><a class="anchor" name="df65ee864a2fd030170b46c4f32d327af6276d5f8e05e1739491574f522c47e2"></a><!-- doxytag: member="DEVICE_OWNED" ref="df65ee864a2fd030170b46c4f32d327af6276d5f8e05e1739491574f522c47e2" args="" -->DEVICE_OWNED</em> </td><td>
124
Failed to release device lock (lock held by PID). </td></tr>
125
<tr><td valign="top"><em><a class="anchor" name="df65ee864a2fd030170b46c4f32d327a0255ab6c98d58b41dbcfcfde7a766afd"></a><!-- doxytag: member="DEVICE_RELEASE" ref="df65ee864a2fd030170b46c4f32d327a0255ab6c98d58b41dbcfcfde7a766afd" args="" -->DEVICE_RELEASE</em> </td><td>
126
Failed to release device lock. </td></tr>
127
<tr><td valign="top"><em><a class="anchor" name="df65ee864a2fd030170b46c4f32d327aa456b2bd45e13ab2e3977aecac0e2581"></a><!-- doxytag: member="DEVICE_STAT" ref="df65ee864a2fd030170b46c4f32d327aa456b2bd45e13ab2e3977aecac0e2581" args="" -->DEVICE_STAT</em> </td><td>
128
Failed to stat device. </td></tr>
134
<hr><h2>Constructor & Destructor Documentation</h2>
135
<a class="anchor" name="e677b87c3fb420faf53007994ac8b6af"></a><!-- doxytag: member="schroot_releaselock::main::main" ref="e677b87c3fb420faf53007994ac8b6af" args="(options::ptr &options)" -->
136
<div class="memitem">
137
<div class="memproto">
138
<table class="memname">
140
<td class="memname">main::main </td>
142
<td class="paramtype"><a class="el" href="classschroot__releaselock_1_1options.html#78a30d60c6ced783d23712c6f5ca14e3">options::ptr</a> & </td>
143
<td class="paramname"> <em>options</em> </td>
144
<td> ) </td>
154
<dl compact><dt><b>Parameters:</b></dt><dd>
155
<table border="0" cellspacing="2" cellpadding="0">
156
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classschroot__releaselock_1_1options.html" title="schroot-releaselock command-line options.">options</a></em> </td><td>the command-line <a class="el" href="classschroot__releaselock_1_1options.html" title="schroot-releaselock command-line options.">options</a> to use. </td></tr>
162
<a class="anchor" name="4444e261c1a635e1aab12e00e5b95f5a"></a><!-- doxytag: member="schroot_releaselock::main::~main" ref="4444e261c1a635e1aab12e00e5b95f5a" args="()" -->
163
<div class="memitem">
164
<div class="memproto">
165
<table class="memname">
167
<td class="memname">main::~main </td>
169
<td class="paramname"> </td>
170
<td> ) </td>
171
<td><code> [virtual]</code></td>
181
<p>Reimplemented from <a class="el" href="classschroot__base_1_1main.html#4444e261c1a635e1aab12e00e5b95f5a">schroot_base::main</a>.</p>
185
<hr><h2>Member Function Documentation</h2>
186
<a class="anchor" name="185e8efd89954f3d64f86f236871e913"></a><!-- doxytag: member="schroot_releaselock::main::action_releaselock" ref="185e8efd89954f3d64f86f236871e913" args="()" -->
187
<div class="memitem">
188
<div class="memproto">
189
<table class="memname">
191
<td class="memname">void main::action_releaselock </td>
193
<td class="paramname"> </td>
194
<td> ) </td>
195
<td><code> [virtual]</code></td>
205
<p>References <a class="el" href="schroot-releaselock-main_8h_source.html#l00040">DEVICE_NOTBLOCK</a>, <a class="el" href="schroot-releaselock-main_8h_source.html#l00041">DEVICE_OWNED</a>, <a class="el" href="schroot-releaselock-main_8h_source.html#l00042">DEVICE_RELEASE</a>, <a class="el" href="schroot-releaselock-main_8h_source.html#l00043">DEVICE_STAT</a>, and <a class="el" href="schroot-releaselock-main_8h_source.html#l00075">opts</a>.</p>
207
<p>Referenced by <a class="el" href="schroot-releaselock-main_8cc_source.html#l00109">run_impl()</a>.</p>
210
<div class="dynheader">
211
Here is the caller graph for this function:</div>
212
<div class="dynsection">
213
<p><center><img src="classschroot__releaselock_1_1main_185e8efd89954f3d64f86f236871e913_icgraph.png" border="0" usemap="#classschroot__releaselock_1_1main_185e8efd89954f3d64f86f236871e913_icgraph_map" alt=""></center>
214
<map name="classschroot__releaselock_1_1main_185e8efd89954f3d64f86f236871e913_icgraph_map">
215
<area shape="rect" href="classschroot__releaselock_1_1main.html#266e0d62ec45cb0c73b03d277205fe8a" title="Run the program." alt="" coords="345,5,575,35"></map>
220
<a class="anchor" name="266e0d62ec45cb0c73b03d277205fe8a"></a><!-- doxytag: member="schroot_releaselock::main::run_impl" ref="266e0d62ec45cb0c73b03d277205fe8a" args="()" -->
221
<div class="memitem">
222
<div class="memproto">
223
<table class="memname">
225
<td class="memname">int main::run_impl </td>
227
<td class="paramname"> </td>
228
<td> ) </td>
229
<td><code> [virtual]</code></td>
238
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, 1 on failure or the exit status of the chroot command. </dd></dl>
240
<p>Implements <a class="el" href="classschroot__base_1_1main.html#e252e6014964a24c7290b9c0378c1310">schroot_base::main</a>.</p>
242
<p>References <a class="el" href="schroot-base-main_8cc_source.html#l00074">schroot_base::main::action_help()</a>, <a class="el" href="schroot-base-options_8h_source.html#l00073">schroot_base::options::ACTION_HELP</a>, <a class="el" href="schroot-releaselock-main_8cc_source.html#l00085">action_releaselock()</a>, <a class="el" href="schroot-releaselock-options_8h_source.html#l00039">schroot_releaselock::options::ACTION_RELEASELOCK</a>, <a class="el" href="schroot-base-main_8cc_source.html#l00056">schroot_base::main::action_version()</a>, <a class="el" href="schroot-base-options_8h_source.html#l00075">schroot_base::options::ACTION_VERSION</a>, and <a class="el" href="schroot-releaselock-main_8h_source.html#l00075">opts</a>.</p>
246
<hr><h2>Member Data Documentation</h2>
247
<a class="anchor" name="71c50ebd9ffd0349faf65e66cbc2054a"></a><!-- doxytag: member="schroot_releaselock::main::opts" ref="71c50ebd9ffd0349faf65e66cbc2054a" args="" -->
248
<div class="memitem">
249
<div class="memproto">
250
<table class="memname">
252
<td class="memname"><a class="el" href="classschroot__releaselock_1_1options.html#78a30d60c6ced783d23712c6f5ca14e3">options::ptr</a> <a class="el" href="classschroot__releaselock_1_1main.html#71c50ebd9ffd0349faf65e66cbc2054a">schroot_releaselock::main::opts</a> </td>
259
The program <a class="el" href="classschroot__releaselock_1_1options.html" title="schroot-releaselock command-line options.">options</a>.
262
<p>Referenced by <a class="el" href="schroot-releaselock-main_8cc_source.html#l00085">action_releaselock()</a>, and <a class="el" href="schroot-releaselock-main_8cc_source.html#l00109">run_impl()</a>.</p>
266
<hr>The documentation for this class was generated from the following files:<ul>
267
<li>bin/schroot-releaselock/<a class="el" href="schroot-releaselock-main_8h_source.html">schroot-releaselock-main.h</a><li>bin/schroot-releaselock/<a class="el" href="schroot-releaselock-main_8cc.html">schroot-releaselock-main.cc</a></ul>
269
<hr size="1"><address style="text-align: right;"><small>Generated on Sun May 17 18:39:02 2009 for schroot by
270
<a href="http://www.doxygen.org/index.html">
271
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>