source: flair-dev/trunk/doc/Flair/classflair_1_1core_1_1_i2c_port.html @ 23

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

m

File size: 33.6 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::I2cPort 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_i2c_port.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_i2c_port-members.html">List of all members</a>  </div>
113  <div class="headertitle">
114<div class="title">flair::core::I2cPort Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
115</div><!--header-->
116<div class="contents">
117
118<p>Base class for i2c port. 
119 <a href="classflair_1_1core_1_1_i2c_port.html#details">More...</a></p>
120
121<p><code>#include &lt;<a class="el" href="_i2c_port_8h_source.html">I2cPort.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::I2cPort:</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_i2c_port.png" usemap="#flair::core::I2cPort_map" alt=""/>
129  <map id="flair::core::I2cPort_map" name="flair::core::I2cPort_map">
130<area href="classflair_1_1core_1_1_mutex.html" title="Class defining a mutex. " alt="flair::core::Mutex" shape="rect" coords="82,56,236,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="82,0,236,24"/>
132<area href="classflair_1_1core_1_1_r_t_d_m___i2c_port.html" title="Class for real time i2c port using RTDM. " alt="flair::core::RTDM_I2cPort" shape="rect" coords="0,168,154,192"/>
133<area href="classflair_1_1core_1_1_unix___i2c_port.html" title="Class for unix serial port. " alt="flair::core::Unix_I2cPort" shape="rect" coords="164,168,318,192"/>
134</map>
135 </div></div>
136<table class="memberdecls">
137<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
138Public Member Functions</h2></td></tr>
139<tr class="memitem:ae12b6920d11f939272b08d36409406ce"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#ae12b6920d11f939272b08d36409406ce">I2cPort</a> (const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *parent, std::string name)</td></tr>
140<tr class="memdesc:ae12b6920d11f939272b08d36409406ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#ae12b6920d11f939272b08d36409406ce">More...</a><br /></td></tr>
141<tr class="separator:ae12b6920d11f939272b08d36409406ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
142<tr class="memitem:ad48445514c3b9e02a1eda6a6595ba686"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#ad48445514c3b9e02a1eda6a6595ba686">~I2cPort</a> ()</td></tr>
143<tr class="memdesc:ad48445514c3b9e02a1eda6a6595ba686"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#ad48445514c3b9e02a1eda6a6595ba686">More...</a><br /></td></tr>
144<tr class="separator:ad48445514c3b9e02a1eda6a6595ba686"><td class="memSeparator" colspan="2">&#160;</td></tr>
145<tr class="memitem:aed344676d32a7876b4514e8079fcfb39"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#aed344676d32a7876b4514e8079fcfb39">SetSlave</a> (uint16_t address)=0</td></tr>
146<tr class="memdesc:aed344676d32a7876b4514e8079fcfb39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set slave's address.  <a href="#aed344676d32a7876b4514e8079fcfb39">More...</a><br /></td></tr>
147<tr class="separator:aed344676d32a7876b4514e8079fcfb39"><td class="memSeparator" colspan="2">&#160;</td></tr>
148<tr class="memitem:a851fc14390e08ba50d312a8f5395d28f"><td class="memItemLeft" align="right" valign="top">virtual ssize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#a851fc14390e08ba50d312a8f5395d28f">Write</a> (const void *buf, size_t nbyte)=0</td></tr>
149<tr class="memdesc:a851fc14390e08ba50d312a8f5395d28f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write datas.  <a href="#a851fc14390e08ba50d312a8f5395d28f">More...</a><br /></td></tr>
150<tr class="separator:a851fc14390e08ba50d312a8f5395d28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
151<tr class="memitem:a1d817db571abf2eb5de697fc476ae143"><td class="memItemLeft" align="right" valign="top">virtual ssize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#a1d817db571abf2eb5de697fc476ae143">Read</a> (void *buf, size_t nbyte)=0</td></tr>
152<tr class="memdesc:a1d817db571abf2eb5de697fc476ae143"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read datas.  <a href="#a1d817db571abf2eb5de697fc476ae143">More...</a><br /></td></tr>
153<tr class="separator:a1d817db571abf2eb5de697fc476ae143"><td class="memSeparator" colspan="2">&#160;</td></tr>
154<tr class="memitem:a70a00b4119f76bbd3525a5e7a800e774"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#a70a00b4119f76bbd3525a5e7a800e774">SetRxTimeout</a> (<a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a> timeout_ns)=0</td></tr>
155<tr class="memdesc:a70a00b4119f76bbd3525a5e7a800e774"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set RX timeout.  <a href="#a70a00b4119f76bbd3525a5e7a800e774">More...</a><br /></td></tr>
156<tr class="separator:a70a00b4119f76bbd3525a5e7a800e774"><td class="memSeparator" colspan="2">&#160;</td></tr>
157<tr class="memitem:ab6fd9827c2301602e5aab8b141800da1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i2c_port.html#ab6fd9827c2301602e5aab8b141800da1">SetTxTimeout</a> (<a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a> timeout_ns)=0</td></tr>
158<tr class="memdesc:ab6fd9827c2301602e5aab8b141800da1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set TX timeout.  <a href="#ab6fd9827c2301602e5aab8b141800da1">More...</a><br /></td></tr>
159<tr class="separator:ab6fd9827c2301602e5aab8b141800da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
160<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>
161<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>
162<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>
163<tr class="separator:a1f85044411d838898a794ceaeb78d8f0 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
164<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>
165<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>
166<tr class="separator:ac8256454205d5146d1fe95b7538b25eb inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
167<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>
168<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>
169<tr class="separator:a225fbd364b794d698b1c7d8c6962492b inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
170<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>
171<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>
172<tr class="separator:a1fd1e2cbcacd6a51e21da35cd26800f6 inherit pub_methods_classflair_1_1core_1_1_mutex"><td class="memSeparator" colspan="2">&#160;</td></tr>
173<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>
174<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>
175<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>
176<tr class="separator:aec92383fd5bf68d9df10414862b7e95c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<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>
178<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>
179<tr class="separator:aa2bde0e6677bbef705c96c93cb06ad09 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
180<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>
181<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>
182<tr class="separator:a9b0344dff7e1c05424d9152c8274523a inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
183<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>
184<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>
185<tr class="separator:a609a250ec037fbcaf8957c8f1dcbfc53 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
186<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>
187<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>
188<tr class="separator:a360c112cc3017a5152ebf6e84d2efa70 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
189<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>
190<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>
191<tr class="separator:ae22db4d723ec2d50b3ba48f26a6a770c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
192<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>
193<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>
194<tr class="separator:a344f81cd35805a9501098bf727ac1a10 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
195<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>
196<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>
197<tr class="separator:af001feba14fc053aa778e61080a0b4cf inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
198<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>
199<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>
200<tr class="separator:a168b18451b2ee6126e1e81d452005ff6 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
201<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>
202<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>
203<tr class="separator:a3ca9694d29ec2b0491739879685df5ca inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
204<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>
205<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>
206<tr class="separator:a36cdd7f556e78b1bddd1d1fe4264bb85 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
207</table><table class="memberdecls">
208<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
209Additional Inherited Members</h2></td></tr>
210<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>
211<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,
212<b>Red</b> = 31,
213<b>Green</b> = 32,
214<b>Orange</b> = 33
215 }</td></tr>
216<tr class="separator:aed5fccda511f97487040fed29f4efc97 inherit pub_types_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
217</table>
218<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
219<div class="textblock"><p>Base class for i2c port. </p>
220<p>This class has a <a class="el" href="classflair_1_1core_1_1_mutex.html" title="Class defining a mutex. ">Mutex</a> which must be used to protect access to the port in case that more than one <a class="el" href="classflair_1_1core_1_1_thread.html" title="Abstract class for a thread. ">Thread</a> is using it. Lock the <a class="el" href="classflair_1_1core_1_1_mutex.html" title="Class defining a mutex. ">Mutex</a> before any communication (including SetSlave) and release it after communication. </p>
221</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
222<a class="anchor" id="ae12b6920d11f939272b08d36409406ce"></a>
223<div class="memitem">
224<div class="memproto">
225<table class="mlabels">
226  <tr>
227  <td class="mlabels-left">
228      <table class="memname">
229        <tr>
230          <td class="memname">flair::core::I2cPort::I2cPort </td>
231          <td>(</td>
232          <td class="paramtype">const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *&#160;</td>
233          <td class="paramname"><em>parent</em>, </td>
234        </tr>
235        <tr>
236          <td class="paramkey"></td>
237          <td></td>
238          <td class="paramtype">std::string&#160;</td>
239          <td class="paramname"><em>name</em>&#160;</td>
240        </tr>
241        <tr>
242          <td></td>
243          <td>)</td>
244          <td></td><td></td>
245        </tr>
246      </table>
247  </td>
248  <td class="mlabels-right">
249<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
250  </tr>
251</table>
252</div><div class="memdoc">
253
254<p>Constructor. </p>
255<p>Construct an i2c port.</p>
256<dl class="params"><dt>Parameters</dt><dd>
257  <table class="params">
258    <tr><td class="paramname">parent</td><td>parent </td></tr>
259    <tr><td class="paramname">name</td><td>name </td></tr>
260  </table>
261  </dd>
262</dl>
263
264</div>
265</div>
266<a class="anchor" id="ad48445514c3b9e02a1eda6a6595ba686"></a>
267<div class="memitem">
268<div class="memproto">
269<table class="mlabels">
270  <tr>
271  <td class="mlabels-left">
272      <table class="memname">
273        <tr>
274          <td class="memname">flair::core::I2cPort::~I2cPort </td>
275          <td>(</td>
276          <td class="paramname"></td><td>)</td>
277          <td></td>
278        </tr>
279      </table>
280  </td>
281  <td class="mlabels-right">
282<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
283  </tr>
284</table>
285</div><div class="memdoc">
286
287<p>Destructor. </p>
288
289</div>
290</div>
291<h2 class="groupheader">Member Function Documentation</h2>
292<a class="anchor" id="aed344676d32a7876b4514e8079fcfb39"></a>
293<div class="memitem">
294<div class="memproto">
295<table class="mlabels">
296  <tr>
297  <td class="mlabels-left">
298      <table class="memname">
299        <tr>
300          <td class="memname">virtual int flair::core::I2cPort::SetSlave </td>
301          <td>(</td>
302          <td class="paramtype">uint16_t&#160;</td>
303          <td class="paramname"><em>address</em></td><td>)</td>
304          <td></td>
305        </tr>
306      </table>
307  </td>
308  <td class="mlabels-right">
309<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
310  </tr>
311</table>
312</div><div class="memdoc">
313
314<p>Set slave's address. </p>
315<p>This function need to be called before any communication.</p>
316<dl class="params"><dt>Parameters</dt><dd>
317  <table class="params">
318    <tr><td class="paramname">address</td><td>slave's address </td></tr>
319  </table>
320  </dd>
321</dl>
322
323<p>Implemented in <a class="el" href="classflair_1_1core_1_1_r_t_d_m___i2c_port.html#a8751f66fc59d35134094a9ac6b9f599a">flair::core::RTDM_I2cPort</a>, and <a class="el" href="classflair_1_1core_1_1_unix___i2c_port.html#a226fe4821954a937986dd55dc13ea3d8">flair::core::Unix_I2cPort</a>.</p>
324
325</div>
326</div>
327<a class="anchor" id="a851fc14390e08ba50d312a8f5395d28f"></a>
328<div class="memitem">
329<div class="memproto">
330<table class="mlabels">
331  <tr>
332  <td class="mlabels-left">
333      <table class="memname">
334        <tr>
335          <td class="memname">virtual ssize_t flair::core::I2cPort::Write </td>
336          <td>(</td>
337          <td class="paramtype">const void *&#160;</td>
338          <td class="paramname"><em>buf</em>, </td>
339        </tr>
340        <tr>
341          <td class="paramkey"></td>
342          <td></td>
343          <td class="paramtype">size_t&#160;</td>
344          <td class="paramname"><em>nbyte</em>&#160;</td>
345        </tr>
346        <tr>
347          <td></td>
348          <td>)</td>
349          <td></td><td></td>
350        </tr>
351      </table>
352  </td>
353  <td class="mlabels-right">
354<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
355  </tr>
356</table>
357</div><div class="memdoc">
358
359<p>Write datas. </p>
360<dl class="params"><dt>Parameters</dt><dd>
361  <table class="params">
362    <tr><td class="paramname">buf</td><td>pointer to datas </td></tr>
363    <tr><td class="paramname">nbyte</td><td>length of datas</td></tr>
364  </table>
365  </dd>
366</dl>
367<dl class="section return"><dt>Returns</dt><dd>amount of written datas </dd></dl>
368
369<p>Implemented in <a class="el" href="classflair_1_1core_1_1_unix___i2c_port.html#ae46ea721f4ed1283e52884dd932c42e4">flair::core::Unix_I2cPort</a>, and <a class="el" href="classflair_1_1core_1_1_r_t_d_m___i2c_port.html#a48eec923878cc0eeecac4f28b0d6db6b">flair::core::RTDM_I2cPort</a>.</p>
370
371</div>
372</div>
373<a class="anchor" id="a1d817db571abf2eb5de697fc476ae143"></a>
374<div class="memitem">
375<div class="memproto">
376<table class="mlabels">
377  <tr>
378  <td class="mlabels-left">
379      <table class="memname">
380        <tr>
381          <td class="memname">virtual ssize_t flair::core::I2cPort::Read </td>
382          <td>(</td>
383          <td class="paramtype">void *&#160;</td>
384          <td class="paramname"><em>buf</em>, </td>
385        </tr>
386        <tr>
387          <td class="paramkey"></td>
388          <td></td>
389          <td class="paramtype">size_t&#160;</td>
390          <td class="paramname"><em>nbyte</em>&#160;</td>
391        </tr>
392        <tr>
393          <td></td>
394          <td>)</td>
395          <td></td><td></td>
396        </tr>
397      </table>
398  </td>
399  <td class="mlabels-right">
400<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
401  </tr>
402</table>
403</div><div class="memdoc">
404
405<p>Read datas. </p>
406<dl class="params"><dt>Parameters</dt><dd>
407  <table class="params">
408    <tr><td class="paramname">buf</td><td>pointer to datas </td></tr>
409    <tr><td class="paramname">nbyte</td><td>length of datas</td></tr>
410  </table>
411  </dd>
412</dl>
413<dl class="section return"><dt>Returns</dt><dd>amount of read datas </dd></dl>
414
415<p>Implemented in <a class="el" href="classflair_1_1core_1_1_unix___i2c_port.html#a68edd3f3770e836a29e4c4a126310e48">flair::core::Unix_I2cPort</a>, and <a class="el" href="classflair_1_1core_1_1_r_t_d_m___i2c_port.html#afec0673b369c8c1cec9acdc13ac4a26e">flair::core::RTDM_I2cPort</a>.</p>
416
417</div>
418</div>
419<a class="anchor" id="a70a00b4119f76bbd3525a5e7a800e774"></a>
420<div class="memitem">
421<div class="memproto">
422<table class="mlabels">
423  <tr>
424  <td class="mlabels-left">
425      <table class="memname">
426        <tr>
427          <td class="memname">virtual void flair::core::I2cPort::SetRxTimeout </td>
428          <td>(</td>
429          <td class="paramtype"><a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a>&#160;</td>
430          <td class="paramname"><em>timeout_ns</em></td><td>)</td>
431          <td></td>
432        </tr>
433      </table>
434  </td>
435  <td class="mlabels-right">
436<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
437  </tr>
438</table>
439</div><div class="memdoc">
440
441<p>Set RX timeout. </p>
442<p>Timeout for waiting an ACK from the slave.</p>
443<dl class="params"><dt>Parameters</dt><dd>
444  <table class="params">
445    <tr><td class="paramname">timeout_ns</td><td>timeout in nano second </td></tr>
446  </table>
447  </dd>
448</dl>
449
450<p>Implemented in <a class="el" href="classflair_1_1core_1_1_r_t_d_m___i2c_port.html#a179f386950ddc6d0220a18e742943cfa">flair::core::RTDM_I2cPort</a>, and <a class="el" href="classflair_1_1core_1_1_unix___i2c_port.html#a7eb6ae7b58b055663cd548da7fd77b36">flair::core::Unix_I2cPort</a>.</p>
451
452</div>
453</div>
454<a class="anchor" id="ab6fd9827c2301602e5aab8b141800da1"></a>
455<div class="memitem">
456<div class="memproto">
457<table class="mlabels">
458  <tr>
459  <td class="mlabels-left">
460      <table class="memname">
461        <tr>
462          <td class="memname">virtual void flair::core::I2cPort::SetTxTimeout </td>
463          <td>(</td>
464          <td class="paramtype"><a class="el" href="namespaceflair_1_1core.html#acc0fa041e08ecf73b2d1d723c339a736">Time</a>&#160;</td>
465          <td class="paramname"><em>timeout_ns</em></td><td>)</td>
466          <td></td>
467        </tr>
468      </table>
469  </td>
470  <td class="mlabels-right">
471<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
472  </tr>
473</table>
474</div><div class="memdoc">
475
476<p>Set TX timeout. </p>
477<p>Timeout for waiting an ACK from the slave.</p>
478<dl class="params"><dt>Parameters</dt><dd>
479  <table class="params">
480    <tr><td class="paramname">timeout_ns</td><td>timeout in nano second </td></tr>
481  </table>
482  </dd>
483</dl>
484
485<p>Implemented in <a class="el" href="classflair_1_1core_1_1_r_t_d_m___i2c_port.html#ac2366749d5566ff2ff4a38d744ecc207">flair::core::RTDM_I2cPort</a>, and <a class="el" href="classflair_1_1core_1_1_unix___i2c_port.html#a5bafddf9907a657fecbba03cee6854af">flair::core::Unix_I2cPort</a>.</p>
486
487</div>
488</div>
489</div><!-- contents -->
490</div><!-- doc-content -->
491<!-- start footer part -->
492<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
493  <ul>
494    <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_i2c_port.html">I2cPort</a></li>
495    <li class="footer">Generated on Wed Jun 22 2016 08:08:42 for Flair by
496    <a href="http://www.doxygen.org/index.html">
497    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
498  </ul>
499</div>
500</body>
501</html>
Note: See TracBrowser for help on using the repository browser.