source: flair-dev/trunk/doc/Flair/classflair_1_1core_1_1_condition_variable.html @ 34

Last change on this file since 34 was 34, checked in by Sanahuja Guillaume, 4 years ago

doc

File size: 28.3 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<meta http-equiv="X-UA-Compatible" content="IE=9"/>
6<meta name="generator" content="Doxygen 1.8.9.1"/>
7<title>Flair: flair::core::ConditionVariable Class Reference</title>
8<link href="tabs.css" rel="stylesheet" type="text/css"/>
9<script type="text/javascript" src="jquery.js"></script>
10<script type="text/javascript" src="dynsections.js"></script>
11<link href="navtree.css" rel="stylesheet" type="text/css"/>
12<script type="text/javascript" src="resize.js"></script>
13<script type="text/javascript" src="navtreedata.js"></script>
14<script type="text/javascript" src="navtree.js"></script>
15<script type="text/javascript">
16  $(document).ready(initResizable);
17  $(window).load(resizeHeight);
18</script>
19<link href="search/search.css" rel="stylesheet" type="text/css"/>
20<script type="text/javascript" src="search/searchdata.js"></script>
21<script type="text/javascript" src="search/search.js"></script>
22<script type="text/javascript">
23  $(document).ready(function() { init_search(); });
24</script>
25<link href="doxygen.css" rel="stylesheet" type="text/css" />
26</head>
27<body>
28<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
29<div id="titlearea">
30<table cellspacing="0" cellpadding="0">
31 <tbody>
32 <tr style="height: 56px;">
33  <td id="projectlogo"><img alt="Logo" src="logo_hds.png"/></td>
34  <td style="padding-left: 0.5em;">
35   <div id="projectname">Flair
36   </div>
37   <div id="projectbrief">Framework Libre Air</div>
38  </td>
39 </tr>
40 </tbody>
41</table>
42</div>
43<!-- end header part -->
44<!-- Generated by Doxygen 1.8.9.1 -->
45<script type="text/javascript">
46var searchBox = new SearchBox("searchBox", "search",false,'Search');
47</script>
48  <div id="navrow1" class="tabs">
49    <ul class="tablist">
50      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
51      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
52      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
53      <li><a href="files.html"><span>Files</span></a></li>
54      <li>
55        <div id="MSearchBox" class="MSearchBoxInactive">
56        <span class="left">
57          <img id="MSearchSelect" src="search/mag_sel.png"
58               onmouseover="return searchBox.OnSearchSelectShow()"
59               onmouseout="return searchBox.OnSearchSelectHide()"
60               alt=""/>
61          <input type="text" id="MSearchField" value="Search" accesskey="S"
62               onfocus="searchBox.OnSearchFieldFocus(true)" 
63               onblur="searchBox.OnSearchFieldFocus(false)" 
64               onkeyup="searchBox.OnSearchFieldChange(event)"/>
65          </span><span class="right">
66            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
67          </span>
68        </div>
69      </li>
70    </ul>
71  </div>
72  <div id="navrow2" class="tabs2">
73    <ul class="tablist">
74      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
75      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
76      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
77      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
78    </ul>
79  </div>
80</div><!-- top -->
81<div id="side-nav" class="ui-resizable side-nav-resizable">
82  <div id="nav-tree">
83    <div id="nav-tree-contents">
84      <div id="nav-sync" class="sync"></div>
85    </div>
86  </div>
87  <div id="splitbar" style="-moz-user-select:none;" 
88       class="ui-resizable-handle">
89  </div>
90</div>
91<script type="text/javascript">
92$(document).ready(function(){initNavTree('classflair_1_1core_1_1_condition_variable.html','');});
93</script>
94<div id="doc-content">
95<!-- window showing the filter options -->
96<div id="MSearchSelectWindow"
97     onmouseover="return searchBox.OnSearchSelectShow()"
98     onmouseout="return searchBox.OnSearchSelectHide()"
99     onkeydown="return searchBox.OnSearchSelectKey(event)">
100</div>
101
102<!-- iframe showing the search results (closed by default) -->
103<div id="MSearchResultsWindow">
104<iframe src="javascript:void(0)" frameborder="0" 
105        name="MSearchResults" id="MSearchResults">
106</iframe>
107</div>
108
109<div class="header">
110  <div class="summary">
111<a href="#pub-methods">Public Member Functions</a> &#124;
112<a href="classflair_1_1core_1_1_condition_variable-members.html">List of all members</a>  </div>
113  <div class="headertitle">
114<div class="title">flair::core::ConditionVariable Class Reference</div>  </div>
115</div><!--header-->
116<div class="contents">
117
118<p>Class defining a condition variable. 
119 <a href="classflair_1_1core_1_1_condition_variable.html#details">More...</a></p>
120
121<p><code>#include &lt;<a class="el" href="_condition_variable_8h_source.html">ConditionVariable.h</a>&gt;</code></p>
122<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
123  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for flair::core::ConditionVariable:</div>
124<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
125</div>
126<div id="dynsection-0-content" class="dyncontent" style="display:none;">
127 <div class="center">
128  <img src="classflair_1_1core_1_1_condition_variable.png" usemap="#flair::core::ConditionVariable_map" alt=""/>
129  <map id="flair::core::ConditionVariable_map" name="flair::core::ConditionVariable_map">
130<area href="classflair_1_1core_1_1_mutex.html" title="Class defining a mutex. " alt="flair::core::Mutex" shape="rect" coords="0,56,173,80"/>
131<area href="classflair_1_1core_1_1_object.html" title="Base class for all Framework&#39;s classes. " alt="flair::core::Object" shape="rect" coords="0,0,173,24"/>
132</map>
133 </div></div>
134<table class="memberdecls">
135<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
136Public Member Functions</h2></td></tr>
137<tr class="memitem:a39d2c7445e468a1fa8efb62d39f7d082"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_condition_variable.html#a39d2c7445e468a1fa8efb62d39f7d082">ConditionVariable</a> (const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *parent, std::string name)</td></tr>
138<tr class="memdesc:a39d2c7445e468a1fa8efb62d39f7d082"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a39d2c7445e468a1fa8efb62d39f7d082">More...</a><br /></td></tr>
139<tr class="separator:a39d2c7445e468a1fa8efb62d39f7d082"><td class="memSeparator" colspan="2">&#160;</td></tr>
140<tr class="memitem:aa2a9990054e13bf0a94dbb19931e8e8c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_condition_variable.html#aa2a9990054e13bf0a94dbb19931e8e8c">~ConditionVariable</a> ()</td></tr>
141<tr class="memdesc:aa2a9990054e13bf0a94dbb19931e8e8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#aa2a9990054e13bf0a94dbb19931e8e8c">More...</a><br /></td></tr>
142<tr class="separator:aa2a9990054e13bf0a94dbb19931e8e8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
143<tr class="memitem:ac51adc9331b169c336bee3497a2d2eff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_condition_variable.html#ac51adc9331b169c336bee3497a2d2eff">CondWait</a> (void)</td></tr>
144<tr class="memdesc:ac51adc9331b169c336bee3497a2d2eff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Block on the condition variable.  <a href="#ac51adc9331b169c336bee3497a2d2eff">More...</a><br /></td></tr>
145<tr class="separator:ac51adc9331b169c336bee3497a2d2eff"><td class="memSeparator" colspan="2">&#160;</td></tr>
146<tr class="memitem:ac70e08c0d3f2017343022c19f1ffcb63"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_condition_variable.html#ac70e08c0d3f2017343022c19f1ffcb63">CondWaitUntil</a> (<a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a> date)</td></tr>
147<tr class="memdesc:ac70e08c0d3f2017343022c19f1ffcb63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Block on the condition variable with a timeout.  <a href="#ac70e08c0d3f2017343022c19f1ffcb63">More...</a><br /></td></tr>
148<tr class="separator:ac70e08c0d3f2017343022c19f1ffcb63"><td class="memSeparator" colspan="2">&#160;</td></tr>
149<tr class="memitem:abaec3da1498ecab5c9e53472eda70105"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_condition_variable.html#abaec3da1498ecab5c9e53472eda70105">CondSignal</a> (void)</td></tr>
150<tr class="memdesc:abaec3da1498ecab5c9e53472eda70105"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unblock threads blocked on the condition variable.  <a href="#abaec3da1498ecab5c9e53472eda70105">More...</a><br /></td></tr>
151<tr class="separator:abaec3da1498ecab5c9e53472eda70105"><td class="memSeparator" colspan="2">&#160;</td></tr>
152<tr class="inherit_header pub_methods_classflair_1_1core_1_1_mutex"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classflair_1_1core_1_1_mutex')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classflair_1_1core_1_1_mutex.html">flair::core::Mutex</a></td></tr>
153<tr class="memitem:a1f85044411d838898a794ceaeb78d8f0 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_mutex.html#a1f85044411d838898a794ceaeb78d8f0">Mutex</a> (const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *parent, std::string name=&quot;&quot;)</td></tr>
154<tr class="memdesc:a1f85044411d838898a794ceaeb78d8f0 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a1f85044411d838898a794ceaeb78d8f0">More...</a><br /></td></tr>
155<tr class="separator:a1f85044411d838898a794ceaeb78d8f0 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
156<tr class="memitem:ac8256454205d5146d1fe95b7538b25eb inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_mutex.html#ac8256454205d5146d1fe95b7538b25eb">~Mutex</a> ()</td></tr>
157<tr class="memdesc:ac8256454205d5146d1fe95b7538b25eb inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#ac8256454205d5146d1fe95b7538b25eb">More...</a><br /></td></tr>
158<tr class="separator:ac8256454205d5146d1fe95b7538b25eb inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
159<tr class="memitem:a225fbd364b794d698b1c7d8c6962492b inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_mutex.html#a225fbd364b794d698b1c7d8c6962492b">GetMutex</a> (void) const </td></tr>
160<tr class="memdesc:a225fbd364b794d698b1c7d8c6962492b inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="mdescLeft">&#160;</td><td class="mdescRight">GetMutex.  <a href="#a225fbd364b794d698b1c7d8c6962492b">More...</a><br /></td></tr>
161<tr class="separator:a225fbd364b794d698b1c7d8c6962492b inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:a1fd1e2cbcacd6a51e21da35cd26800f6 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_mutex.html#a1fd1e2cbcacd6a51e21da35cd26800f6">ReleaseMutex</a> (void) const </td></tr>
163<tr class="memdesc:a1fd1e2cbcacd6a51e21da35cd26800f6 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="mdescLeft">&#160;</td><td class="mdescRight">ReleaseMutex.  <a href="#a1fd1e2cbcacd6a51e21da35cd26800f6">More...</a><br /></td></tr>
164<tr class="separator:a1fd1e2cbcacd6a51e21da35cd26800f6 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="inherit_header pub_methods_classflair_1_1core_1_1_object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classflair_1_1core_1_1_object')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classflair_1_1core_1_1_object.html">flair::core::Object</a></td></tr>
166<tr class="memitem:aec92383fd5bf68d9df10414862b7e95c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#aec92383fd5bf68d9df10414862b7e95c">Object</a> (const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *parent=NULL, std::string name=&quot;&quot;, std::string type=&quot;&quot;)</td></tr>
167<tr class="memdesc:aec92383fd5bf68d9df10414862b7e95c inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#aec92383fd5bf68d9df10414862b7e95c">More...</a><br /></td></tr>
168<tr class="separator:aec92383fd5bf68d9df10414862b7e95c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
169<tr class="memitem:aa2bde0e6677bbef705c96c93cb06ad09 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#aa2bde0e6677bbef705c96c93cb06ad09">~Object</a> ()</td></tr>
170<tr class="memdesc:aa2bde0e6677bbef705c96c93cb06ad09 inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#aa2bde0e6677bbef705c96c93cb06ad09">More...</a><br /></td></tr>
171<tr class="separator:aa2bde0e6677bbef705c96c93cb06ad09 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
172<tr class="memitem:a9b0344dff7e1c05424d9152c8274523a inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a9b0344dff7e1c05424d9152c8274523a">ObjectName</a> (void) const </td></tr>
173<tr class="memdesc:a9b0344dff7e1c05424d9152c8274523a inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="#a9b0344dff7e1c05424d9152c8274523a">More...</a><br /></td></tr>
174<tr class="separator:a9b0344dff7e1c05424d9152c8274523a inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
175<tr class="memitem:a609a250ec037fbcaf8957c8f1dcbfc53 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a609a250ec037fbcaf8957c8f1dcbfc53">ObjectType</a> (void) const </td></tr>
176<tr class="memdesc:a609a250ec037fbcaf8957c8f1dcbfc53 inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type.  <a href="#a609a250ec037fbcaf8957c8f1dcbfc53">More...</a><br /></td></tr>
177<tr class="separator:a609a250ec037fbcaf8957c8f1dcbfc53 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
178<tr class="memitem:a360c112cc3017a5152ebf6e84d2efa70 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a360c112cc3017a5152ebf6e84d2efa70">Parent</a> (void) const </td></tr>
179<tr class="memdesc:a360c112cc3017a5152ebf6e84d2efa70 inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent.  <a href="#a360c112cc3017a5152ebf6e84d2efa70">More...</a><br /></td></tr>
180<tr class="separator:a360c112cc3017a5152ebf6e84d2efa70 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
181<tr class="memitem:ae22db4d723ec2d50b3ba48f26a6a770c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">std::vector&lt; const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#ae22db4d723ec2d50b3ba48f26a6a770c">TypeChilds</a> (void) const </td></tr>
182<tr class="memdesc:ae22db4d723ec2d50b3ba48f26a6a770c inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Childs of the same type.  <a href="#ae22db4d723ec2d50b3ba48f26a6a770c">More...</a><br /></td></tr>
183<tr class="separator:ae22db4d723ec2d50b3ba48f26a6a770c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
184<tr class="memitem:a344f81cd35805a9501098bf727ac1a10 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">std::vector&lt; const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> * &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a344f81cd35805a9501098bf727ac1a10">Childs</a> (void) const </td></tr>
185<tr class="memdesc:a344f81cd35805a9501098bf727ac1a10 inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Childs.  <a href="#a344f81cd35805a9501098bf727ac1a10">More...</a><br /></td></tr>
186<tr class="separator:a344f81cd35805a9501098bf727ac1a10 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<tr class="memitem:af001feba14fc053aa778e61080a0b4cf inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#af001feba14fc053aa778e61080a0b4cf">Information</a> (const char *function, int line, const char *format,...) const </td></tr>
188<tr class="memdesc:af001feba14fc053aa778e61080a0b4cf inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted information.  <a href="#af001feba14fc053aa778e61080a0b4cf">More...</a><br /></td></tr>
189<tr class="separator:af001feba14fc053aa778e61080a0b4cf inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
190<tr class="memitem:a168b18451b2ee6126e1e81d452005ff6 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a168b18451b2ee6126e1e81d452005ff6">Warning</a> (const char *function, const char *format,...) const </td></tr>
191<tr class="memdesc:a168b18451b2ee6126e1e81d452005ff6 inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted warning.  <a href="#a168b18451b2ee6126e1e81d452005ff6">More...</a><br /></td></tr>
192<tr class="separator:a168b18451b2ee6126e1e81d452005ff6 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
193<tr class="memitem:a3ca9694d29ec2b0491739879685df5ca inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a3ca9694d29ec2b0491739879685df5ca">Error</a> (const char *function, const char *format,...) const </td></tr>
194<tr class="memdesc:a3ca9694d29ec2b0491739879685df5ca inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formatted error.  <a href="#a3ca9694d29ec2b0491739879685df5ca">More...</a><br /></td></tr>
195<tr class="separator:a3ca9694d29ec2b0491739879685df5ca inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
196<tr class="memitem:a36cdd7f556e78b1bddd1d1fe4264bb85 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_object.html#a36cdd7f556e78b1bddd1d1fe4264bb85">ErrorOccured</a> (bool recursive=true) const </td></tr>
197<tr class="memdesc:a36cdd7f556e78b1bddd1d1fe4264bb85 inherit pub_methods_classflair_1_1core_1_1_object"><td class="mdescLeft">&#160;</td><td class="mdescRight">Has an errror occured?  <a href="#a36cdd7f556e78b1bddd1d1fe4264bb85">More...</a><br /></td></tr>
198<tr class="separator:a36cdd7f556e78b1bddd1d1fe4264bb85 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
199</table><table class="memberdecls">
200<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
201Additional Inherited Members</h2></td></tr>
202<tr class="inherit_header pub_types_classflair_1_1core_1_1_object"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classflair_1_1core_1_1_object')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classflair_1_1core_1_1_object.html">flair::core::Object</a></td></tr>
203<tr class="memitem:aed5fccda511f97487040fed29f4efc97 inherit pub_types_classflair_1_1core_1_1_object"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed5fccda511f97487040fed29f4efc97"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>color_t</b> { <b>Auto</b> = 0,
204<b>Red</b> = 31,
205<b>Green</b> = 32,
206<b>Orange</b> = 33
207 }</td></tr>
208<tr class="separator:aed5fccda511f97487040fed29f4efc97 inherit pub_types_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
209</table>
210<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
211<div class="textblock"><p>Class defining a condition variable. </p>
212</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
213<a class="anchor" id="a39d2c7445e468a1fa8efb62d39f7d082"></a>
214<div class="memitem">
215<div class="memproto">
216      <table class="memname">
217        <tr>
218          <td class="memname">flair::core::ConditionVariable::ConditionVariable </td>
219          <td>(</td>
220          <td class="paramtype">const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *&#160;</td>
221          <td class="paramname"><em>parent</em>, </td>
222        </tr>
223        <tr>
224          <td class="paramkey"></td>
225          <td></td>
226          <td class="paramtype">std::string&#160;</td>
227          <td class="paramname"><em>name</em>&#160;</td>
228        </tr>
229        <tr>
230          <td></td>
231          <td>)</td>
232          <td></td><td></td>
233        </tr>
234      </table>
235</div><div class="memdoc">
236
237<p>Constructor. </p>
238<p>Construct a condition variable with its associated mutex.</p>
239<dl class="params"><dt>Parameters</dt><dd>
240  <table class="params">
241    <tr><td class="paramname">parent</td><td>parent </td></tr>
242    <tr><td class="paramname">name</td><td>name </td></tr>
243  </table>
244  </dd>
245</dl>
246
247</div>
248</div>
249<a class="anchor" id="aa2a9990054e13bf0a94dbb19931e8e8c"></a>
250<div class="memitem">
251<div class="memproto">
252      <table class="memname">
253        <tr>
254          <td class="memname">flair::core::ConditionVariable::~ConditionVariable </td>
255          <td>(</td>
256          <td class="paramname"></td><td>)</td>
257          <td></td>
258        </tr>
259      </table>
260</div><div class="memdoc">
261
262<p>Destructor. </p>
263
264</div>
265</div>
266<h2 class="groupheader">Member Function Documentation</h2>
267<a class="anchor" id="ac51adc9331b169c336bee3497a2d2eff"></a>
268<div class="memitem">
269<div class="memproto">
270      <table class="memname">
271        <tr>
272          <td class="memname">void flair::core::ConditionVariable::CondWait </td>
273          <td>(</td>
274          <td class="paramtype">void&#160;</td>
275          <td class="paramname"></td><td>)</td>
276          <td></td>
277        </tr>
278      </table>
279</div><div class="memdoc">
280
281<p>Block on the condition variable. </p>
282<p>This method must be called with mutex locked (see <a class="el" href="classflair_1_1core_1_1_mutex.html#a225fbd364b794d698b1c7d8c6962492b" title="GetMutex. ">Mutex::GetMutex</a>) by the calling thread or undefined behaviour will result. <br />
283 It atomically releases mutex and causes the calling thread to block on the condition variable. <br />
284 Only one thread can be blocked at the same time. <br />
285 Upon successful return, the mutex has been locked and is owned by the calling thread which should unlock it (see <a class="el" href="classflair_1_1core_1_1_mutex.html#a1fd1e2cbcacd6a51e21da35cd26800f6" title="ReleaseMutex. ">Mutex::ReleaseMutex</a>). </p>
286
287</div>
288</div>
289<a class="anchor" id="ac70e08c0d3f2017343022c19f1ffcb63"></a>
290<div class="memitem">
291<div class="memproto">
292      <table class="memname">
293        <tr>
294          <td class="memname">bool flair::core::ConditionVariable::CondWaitUntil </td>
295          <td>(</td>
296          <td class="paramtype"><a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a>&#160;</td>
297          <td class="paramname"><em>date</em></td><td>)</td>
298          <td></td>
299        </tr>
300      </table>
301</div><div class="memdoc">
302
303<p>Block on the condition variable with a timeout. </p>
304<p>This method must be called with mutex locked (see <a class="el" href="classflair_1_1core_1_1_mutex.html#a225fbd364b794d698b1c7d8c6962492b" title="GetMutex. ">Mutex::GetMutex</a>) by the calling thread or undefined behaviour will result. <br />
305 It atomically releases mutex and causes the calling thread to block on the condition variable. <br />
306 Only one thread can be blocked at the same time. <br />
307 Upon successful return, the mutex has been locked and is owned by the calling thread which should unlock it (see <a class="el" href="classflair_1_1core_1_1_mutex.html#a1fd1e2cbcacd6a51e21da35cd26800f6" title="ReleaseMutex. ">Mutex::ReleaseMutex</a>).</p>
308<dl class="params"><dt>Parameters</dt><dd>
309  <table class="params">
310    <tr><td class="paramname">date</td><td>absolute date </td></tr>
311  </table>
312  </dd>
313</dl>
314<dl class="section return"><dt>Returns</dt><dd>true if the condition variable is signaled before the date specified in parameter elapses, false otherwise </dd></dl>
315
316</div>
317</div>
318<a class="anchor" id="abaec3da1498ecab5c9e53472eda70105"></a>
319<div class="memitem">
320<div class="memproto">
321      <table class="memname">
322        <tr>
323          <td class="memname">void flair::core::ConditionVariable::CondSignal </td>
324          <td>(</td>
325          <td class="paramtype">void&#160;</td>
326          <td class="paramname"></td><td>)</td>
327          <td></td>
328        </tr>
329      </table>
330</div><div class="memdoc">
331
332<p>Unblock threads blocked on the condition variable. </p>
333<p>This method should be called with mutex locked (see <a class="el" href="classflair_1_1core_1_1_mutex.html#a225fbd364b794d698b1c7d8c6962492b" title="GetMutex. ">Mutex::GetMutex</a>) by the calling thread. <br />
334 In this case, upon return, the calling thread should unlock the mutex (see <a class="el" href="classflair_1_1core_1_1_mutex.html#a1fd1e2cbcacd6a51e21da35cd26800f6" title="ReleaseMutex. ">Mutex::ReleaseMutex</a>). </p>
335
336</div>
337</div>
338</div><!-- contents -->
339</div><!-- doc-content -->
340<!-- start footer part -->
341<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
342  <ul>
343    <li class="navelem"><a class="el" href="namespaceflair.html">flair</a></li><li class="navelem"><a class="el" href="namespaceflair_1_1core.html">core</a></li><li class="navelem"><a class="el" href="classflair_1_1core_1_1_condition_variable.html">ConditionVariable</a></li>
344    <li class="footer">Generated on Wed Sep 28 2016 06:30:10 for Flair by
345    <a href="http://www.doxygen.org/index.html">
346    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
347  </ul>
348</div>
349</body>
350</html>
Note: See TracBrowser for help on using the repository browser.