source: flair-dev/trunk/doc/Flair/classflair_1_1core_1_1_shared_mem.html

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

doc

File size: 25.2 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::SharedMem 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_shared_mem.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-types">Public Types</a> &#124;
112<a href="#pub-methods">Public Member Functions</a> &#124;
113<a href="classflair_1_1core_1_1_shared_mem-members.html">List of all members</a> </div>
114 <div class="headertitle">
115<div class="title">flair::core::SharedMem Class Reference</div> </div>
116</div><!--header-->
117<div class="contents">
118
119<p>Class defining a shared memory.
120 <a href="classflair_1_1core_1_1_shared_mem.html#details">More...</a></p>
121
122<p><code>#include &lt;<a class="el" href="_shared_mem_8h_source.html">SharedMem.h</a>&gt;</code></p>
123<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
124 <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for flair::core::SharedMem:</div>
125<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
126</div>
127<div id="dynsection-0-content" class="dyncontent" style="display:none;">
128 <div class="center">
129 <img src="classflair_1_1core_1_1_shared_mem.png" usemap="#flair::core::SharedMem_map" alt=""/>
130 <map id="flair::core::SharedMem_map" name="flair::core::SharedMem_map">
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,140,24"/>
132</map>
133 </div></div>
134<table class="memberdecls">
135<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
136Public Types</h2></td></tr>
137<tr class="memitem:ac51e68f77d5ab8dc62e41b90a0a8bff3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac51e68f77d5ab8dc62e41b90a0a8bff3"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Type</b> { <b>mutex</b>,
138<b>producerConsumer</b>
139 }</td></tr>
140<tr class="separator:ac51e68f77d5ab8dc62e41b90a0a8bff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
141<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>
142<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,
143<b>Red</b> = 31,
144<b>Green</b> = 32,
145<b>Orange</b> = 33
146 }</td></tr>
147<tr class="separator:aed5fccda511f97487040fed29f4efc97 inherit pub_types_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
148</table><table class="memberdecls">
149<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
150Public Member Functions</h2></td></tr>
151<tr class="memitem:a003b9e48b88ac57bb7255b80f7768d9f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_shared_mem.html#a003b9e48b88ac57bb7255b80f7768d9f">SharedMem</a> (const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *parent, std::string name, size_t size, Type type=Type::mutex)</td></tr>
152<tr class="memdesc:a003b9e48b88ac57bb7255b80f7768d9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="#a003b9e48b88ac57bb7255b80f7768d9f">More...</a><br /></td></tr>
153<tr class="separator:a003b9e48b88ac57bb7255b80f7768d9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
154<tr class="memitem:af3f51c01e679a8dd1f6f7c64cee55ed7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_shared_mem.html#af3f51c01e679a8dd1f6f7c64cee55ed7">~SharedMem</a> ()</td></tr>
155<tr class="memdesc:af3f51c01e679a8dd1f6f7c64cee55ed7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="#af3f51c01e679a8dd1f6f7c64cee55ed7">More...</a><br /></td></tr>
156<tr class="separator:af3f51c01e679a8dd1f6f7c64cee55ed7"><td class="memSeparator" colspan="2">&#160;</td></tr>
157<tr class="memitem:a7609d68ab9155055bea84cafaf741392"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_shared_mem.html#a7609d68ab9155055bea84cafaf741392">Write</a> (const char *buf, size_t size)</td></tr>
158<tr class="memdesc:a7609d68ab9155055bea84cafaf741392"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write. <a href="#a7609d68ab9155055bea84cafaf741392">More...</a><br /></td></tr>
159<tr class="separator:a7609d68ab9155055bea84cafaf741392"><td class="memSeparator" colspan="2">&#160;</td></tr>
160<tr class="memitem:a834ba5f2d06345b0125f7ba8b66391b6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_shared_mem.html#a834ba5f2d06345b0125f7ba8b66391b6">Read</a> (char *buf, size_t size, <a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a> nsTimeout=TIME_INFINITE) const </td></tr>
161<tr class="memdesc:a834ba5f2d06345b0125f7ba8b66391b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read. <a href="#a834ba5f2d06345b0125f7ba8b66391b6">More...</a><br /></td></tr>
162<tr class="separator:a834ba5f2d06345b0125f7ba8b66391b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
163<tr class="memitem:aead806d7b3e48aecefcbb3dcd724ef49"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_shared_mem.html#aead806d7b3e48aecefcbb3dcd724ef49">ReaderReady</a> ()</td></tr>
164<tr class="memdesc:aead806d7b3e48aecefcbb3dcd724ef49"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function should be called when reader is ready (in case of a <a class="el" href="classflair_1_1core_1_1_shared_mem.html" title="Class defining a shared memory. ">SharedMem</a> of type producerConsumer) <a href="#aead806d7b3e48aecefcbb3dcd724ef49">More...</a><br /></td></tr>
165<tr class="separator:aead806d7b3e48aecefcbb3dcd724ef49"><td class="memSeparator" colspan="2">&#160;</td></tr>
166<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>
167<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>
168<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>
169<tr class="separator:aec92383fd5bf68d9df10414862b7e95c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
170<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>
171<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>
172<tr class="separator:aa2bde0e6677bbef705c96c93cb06ad09 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
173<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>
174<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>
175<tr class="separator:a9b0344dff7e1c05424d9152c8274523a inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
176<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>
177<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>
178<tr class="separator:a609a250ec037fbcaf8957c8f1dcbfc53 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
179<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>
180<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>
181<tr class="separator:a360c112cc3017a5152ebf6e84d2efa70 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
182<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>
183<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>
184<tr class="separator:ae22db4d723ec2d50b3ba48f26a6a770c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
185<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>
186<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>
187<tr class="separator:a344f81cd35805a9501098bf727ac1a10 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
188<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>
189<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>
190<tr class="separator:af001feba14fc053aa778e61080a0b4cf inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
191<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>
192<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>
193<tr class="separator:a168b18451b2ee6126e1e81d452005ff6 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
194<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>
195<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>
196<tr class="separator:a3ca9694d29ec2b0491739879685df5ca inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
197<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>
198<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>
199<tr class="separator:a36cdd7f556e78b1bddd1d1fe4264bb85 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
200</table>
201<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
202<div class="textblock"><p>Class defining a shared memory. </p>
203<p>Shared memory is identified by its name so it can be accessed by another process using its name. </p>
204</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
205<a class="anchor" id="a003b9e48b88ac57bb7255b80f7768d9f"></a>
206<div class="memitem">
207<div class="memproto">
208 <table class="memname">
209 <tr>
210 <td class="memname">flair::core::SharedMem::SharedMem </td>
211 <td>(</td>
212 <td class="paramtype">const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *&#160;</td>
213 <td class="paramname"><em>parent</em>, </td>
214 </tr>
215 <tr>
216 <td class="paramkey"></td>
217 <td></td>
218 <td class="paramtype">std::string&#160;</td>
219 <td class="paramname"><em>name</em>, </td>
220 </tr>
221 <tr>
222 <td class="paramkey"></td>
223 <td></td>
224 <td class="paramtype">size_t&#160;</td>
225 <td class="paramname"><em>size</em>, </td>
226 </tr>
227 <tr>
228 <td class="paramkey"></td>
229 <td></td>
230 <td class="paramtype">Type&#160;</td>
231 <td class="paramname"><em>type</em> = <code>Type::mutex</code>&#160;</td>
232 </tr>
233 <tr>
234 <td></td>
235 <td>)</td>
236 <td></td><td></td>
237 </tr>
238 </table>
239</div><div class="memdoc">
240
241<p>Constructor. </p>
242<p>Construct a shared memory object</p>
243<dl class="params"><dt>Parameters</dt><dd>
244 <table class="params">
245 <tr><td class="paramname">parent</td><td>parent </td></tr>
246 <tr><td class="paramname">name</td><td>name </td></tr>
247 <tr><td class="paramname">size</td><td>size of the shared memory:w</td></tr>
248 <tr><td class="paramname">type</td><td>mutex or producerConsumer. <a class="el" href="classflair_1_1core_1_1_mutex.html" title="Class defining a mutex. ">Mutex</a> type is for symmetrical use (default) </td></tr>
249 </table>
250 </dd>
251</dl>
252
253</div>
254</div>
255<a class="anchor" id="af3f51c01e679a8dd1f6f7c64cee55ed7"></a>
256<div class="memitem">
257<div class="memproto">
258 <table class="memname">
259 <tr>
260 <td class="memname">flair::core::SharedMem::~SharedMem </td>
261 <td>(</td>
262 <td class="paramname"></td><td>)</td>
263 <td></td>
264 </tr>
265 </table>
266</div><div class="memdoc">
267
268<p>Destructor. </p>
269
270</div>
271</div>
272<h2 class="groupheader">Member Function Documentation</h2>
273<a class="anchor" id="a7609d68ab9155055bea84cafaf741392"></a>
274<div class="memitem">
275<div class="memproto">
276 <table class="memname">
277 <tr>
278 <td class="memname">void flair::core::SharedMem::Write </td>
279 <td>(</td>
280 <td class="paramtype">const char *&#160;</td>
281 <td class="paramname"><em>buf</em>, </td>
282 </tr>
283 <tr>
284 <td class="paramkey"></td>
285 <td></td>
286 <td class="paramtype">size_t&#160;</td>
287 <td class="paramname"><em>size</em>&#160;</td>
288 </tr>
289 <tr>
290 <td></td>
291 <td>)</td>
292 <td></td><td></td>
293 </tr>
294 </table>
295</div><div class="memdoc">
296
297<p>Write. </p>
298<dl class="params"><dt>Parameters</dt><dd>
299 <table class="params">
300 <tr><td class="paramname">buf</td><td>input buffer to write to memory </td></tr>
301 <tr><td class="paramname">size</td><td>buffer size </td></tr>
302 </table>
303 </dd>
304</dl>
305
306</div>
307</div>
308<a class="anchor" id="a834ba5f2d06345b0125f7ba8b66391b6"></a>
309<div class="memitem">
310<div class="memproto">
311 <table class="memname">
312 <tr>
313 <td class="memname">bool flair::core::SharedMem::Read </td>
314 <td>(</td>
315 <td class="paramtype">char *&#160;</td>
316 <td class="paramname"><em>buf</em>, </td>
317 </tr>
318 <tr>
319 <td class="paramkey"></td>
320 <td></td>
321 <td class="paramtype">size_t&#160;</td>
322 <td class="paramname"><em>size</em>, </td>
323 </tr>
324 <tr>
325 <td class="paramkey"></td>
326 <td></td>
327 <td class="paramtype"><a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a>&#160;</td>
328 <td class="paramname"><em>nsTimeout</em> = <code>TIME_INFINITE</code>&#160;</td>
329 </tr>
330 <tr>
331 <td></td>
332 <td>)</td>
333 <td></td><td> const</td>
334 </tr>
335 </table>
336</div><div class="memdoc">
337
338<p>Read. </p>
339<dl class="params"><dt>Parameters</dt><dd>
340 <table class="params">
341 <tr><td class="paramname">buf</td><td>output buffer to write from memory </td></tr>
342 <tr><td class="paramname">size</td><td>buffer size </td></tr>
343 </table>
344 </dd>
345</dl>
346
347</div>
348</div>
349<a class="anchor" id="aead806d7b3e48aecefcbb3dcd724ef49"></a>
350<div class="memitem">
351<div class="memproto">
352 <table class="memname">
353 <tr>
354 <td class="memname">void flair::core::SharedMem::ReaderReady </td>
355 <td>(</td>
356 <td class="paramname"></td><td>)</td>
357 <td></td>
358 </tr>
359 </table>
360</div><div class="memdoc">
361
362<p>This function should be called when reader is ready (in case of a <a class="el" href="classflair_1_1core_1_1_shared_mem.html" title="Class defining a shared memory. ">SharedMem</a> of type producerConsumer) </p>
363
364</div>
365</div>
366</div><!-- contents -->
367</div><!-- doc-content -->
368<!-- start footer part -->
369<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
370 <ul>
371 <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_shared_mem.html">SharedMem</a></li>
372 <li class="footer">Generated on Thu Jan 31 2019 12:34:23 for Flair by
373 <a href="http://www.doxygen.org/index.html">
374 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
375 </ul>
376</div>
377</body>
378</html>
Note: See TracBrowser for help on using the repository browser.