source: flair-dev/tags/0.1.1/doc/Flair/classflair_1_1core_1_1_i_o_device.html@ 83

Last change on this file since 83 was 56, checked in by Sanahuja Guillaume, 7 years ago

m

File size: 39.0 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::IODevice 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_i_o_device.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="#pro-methods">Protected Member Functions</a> &#124;
113<a href="classflair_1_1core_1_1_i_o_device-members.html">List of all members</a> </div>
114 <div class="headertitle">
115<div class="title">flair::core::IODevice Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
116</div><!--header-->
117<div class="contents">
118
119<p>Abstract class for input/ouput system.
120 <a href="classflair_1_1core_1_1_i_o_device.html#details">More...</a></p>
121
122<p><code>#include &lt;<a class="el" href="_i_o_device_8h_source.html">IODevice.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::IODevice:</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_i_o_device.png" usemap="#flair::core::IODevice_map" alt=""/>
130 <map id="flair::core::IODevice_map" name="flair::core::IODevice_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,236,24"/>
132<area href="classflair_1_1actuator_1_1_bl_ctrl_v2__x4__speed.html" alt="flair::actuator::BlCtrlV2_x4_speed" shape="rect" coords="246,112,482,136"/>
133<area href="classflair_1_1actuator_1_1_bldc.html" title="Base class for brushless motors drivers. " alt="flair::actuator::Bldc" shape="rect" coords="246,168,482,192"/>
134<area href="classflair_1_1filter_1_1_ahrs.html" title="Abstract class for AHRS. " alt="flair::filter::Ahrs" shape="rect" coords="246,224,482,248"/>
135<area href="classflair_1_1filter_1_1_butterworth_low_pass.html" title="Class defining a Butterworth low pass filter. " alt="flair::filter::ButterworthLowPass" shape="rect" coords="246,280,482,304"/>
136<area href="classflair_1_1filter_1_1_control_law.html" title="Base class for control law input must be created by reimplemented class. output is created by this cl..." alt="flair::filter::ControlLaw" shape="rect" coords="246,336,482,360"/>
137<area href="classflair_1_1filter_1_1_euler_derivative.html" title="Class defining an euler derivative. " alt="flair::filter::EulerDerivative" shape="rect" coords="246,392,482,416"/>
138<area href="classflair_1_1filter_1_1_joy_reference.html" title="Class creating references from a joystick. " alt="flair::filter::JoyReference" shape="rect" coords="246,448,482,472"/>
139<area href="classflair_1_1filter_1_1_low_pass_filter.html" title="Class defining a first order low pass filter. " alt="flair::filter::LowPassFilter" shape="rect" coords="246,504,482,528"/>
140<area href="classflair_1_1filter_1_1_trajectory_generator1_d.html" title="Class generating a trajectory in 1D. " alt="flair::filter::TrajectoryGenerator1D" shape="rect" coords="246,560,482,584"/>
141<area href="classflair_1_1filter_1_1_trajectory_generator2_d_circle.html" title="Class generating a circle trajectory in 2D. " alt="flair::filter::TrajectoryGenerator2DCircle" shape="rect" coords="246,616,482,640"/>
142<area href="classflair_1_1filter_1_1_uav_multiplex.html" title="Class defining uav multiplexing. " alt="flair::filter::UavMultiplex" shape="rect" coords="246,672,482,696"/>
143<area href="classflair_1_1meta_1_1_meta_dual_shock3.html" title="Classe intégrant la manette MetaDualShock3. " alt="flair::meta::MetaDualShock3" shape="rect" coords="246,728,482,752"/>
144<area href="classflair_1_1sensor_1_1_camera.html" title="Base class for Camera. " alt="flair::sensor::Camera" shape="rect" coords="246,784,482,808"/>
145<area href="classflair_1_1sensor_1_1_host_eth_controller.html" title="Base Class for host side remote controls that talks to target side through ethernet connection..." alt="flair::sensor::HostEthController" shape="rect" coords="246,840,482,864"/>
146<area href="classflair_1_1sensor_1_1_imu.html" title="Base class for Imu. " alt="flair::sensor::Imu" shape="rect" coords="246,896,482,920"/>
147<area href="classflair_1_1sensor_1_1_laser_range_finder.html" title="Classe generique intégrant les telemetres laser. " alt="flair::sensor::LaserRangeFinder" shape="rect" coords="246,952,482,976"/>
148<area href="classflair_1_1sensor_1_1_nmea_gps.html" title="Base class for GPS using NMEA sentances. " alt="flair::sensor::NmeaGps" shape="rect" coords="246,1008,482,1032"/>
149<area href="classflair_1_1sensor_1_1_radio_receiver.html" title="Base class for radio receiver. " alt="flair::sensor::RadioReceiver" shape="rect" coords="246,1064,482,1088"/>
150<area href="classflair_1_1sensor_1_1_target_controller.html" title="Base Class for target side remote controls. " alt="flair::sensor::TargetController" shape="rect" coords="246,1120,482,1144"/>
151<area href="classflair_1_1sensor_1_1_us_range_finder.html" title="Base class for UsRangeFinder. " alt="flair::sensor::UsRangeFinder" shape="rect" coords="246,1176,482,1200"/>
152<area href="classflair_1_1sensor_1_1_vrpn_object.html" title="Class for VRPN object. The IODevice is created with the VrpnClient as parent. VrpnClient must be crea..." alt="flair::sensor::VrpnObject" shape="rect" coords="246,1232,482,1256"/>
153<area href="classflair_1_1simulator_1_1_model.html" alt="flair::simulator::Model" shape="rect" coords="246,1288,482,1312"/>
154</map>
155 </div></div>
156<table class="memberdecls">
157<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
158Public Member Functions</h2></td></tr>
159<tr class="memitem:a9693b497752b466891eaafeb34bec4d3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#a9693b497752b466891eaafeb34bec4d3">IODevice</a> (const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *parent, std::string name)</td></tr>
160<tr class="memdesc:a9693b497752b466891eaafeb34bec4d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="#a9693b497752b466891eaafeb34bec4d3">More...</a><br /></td></tr>
161<tr class="separator:a9693b497752b466891eaafeb34bec4d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
162<tr class="memitem:a05246988b486def40926d8491e1bcc5f"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#a05246988b486def40926d8491e1bcc5f">~IODevice</a> ()</td></tr>
163<tr class="memdesc:a05246988b486def40926d8491e1bcc5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="#a05246988b486def40926d8491e1bcc5f">More...</a><br /></td></tr>
164<tr class="separator:a05246988b486def40926d8491e1bcc5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:af7b42de6bb3893df860063228b55c229"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#af7b42de6bb3893df860063228b55c229">AddDeviceToLog</a> (const <a class="el" href="classflair_1_1core_1_1_i_o_device.html">IODevice</a> *device)</td></tr>
166<tr class="memdesc:af7b42de6bb3893df860063228b55c229"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> to the logs. <a href="#af7b42de6bb3893df860063228b55c229">More...</a><br /></td></tr>
167<tr class="separator:af7b42de6bb3893df860063228b55c229"><td class="memSeparator" colspan="2">&#160;</td></tr>
168<tr class="memitem:a2e0b7af75abdbf39843d8bf2e45f08b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#a2e0b7af75abdbf39843d8bf2e45f08b9">AddDataToLog</a> (const <a class="el" href="classflair_1_1core_1_1io__data.html">io_data</a> *data)</td></tr>
169<tr class="memdesc:a2e0b7af75abdbf39843d8bf2e45f08b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an <a class="el" href="classflair_1_1core_1_1io__data.html" title="Abstract class for data types. ">io_data</a> to the log. <a href="#a2e0b7af75abdbf39843d8bf2e45f08b9">More...</a><br /></td></tr>
170<tr class="separator:a2e0b7af75abdbf39843d8bf2e45f08b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
171<tr class="memitem:a12d811c6926fb86da6b47f889109da66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#a12d811c6926fb86da6b47f889109da66">OutputToShMem</a> (bool enabled)</td></tr>
172<tr class="memdesc:a12d811c6926fb86da6b47f889109da66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send the output to a shared memory. <a href="#a12d811c6926fb86da6b47f889109da66">More...</a><br /></td></tr>
173<tr class="separator:a12d811c6926fb86da6b47f889109da66"><td class="memSeparator" colspan="2">&#160;</td></tr>
174<tr class="memitem:aee7828ae2eece2bace8e476dacc2bc12"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#aee7828ae2eece2bace8e476dacc2bc12">IsReady</a> (void) const </td></tr>
175<tr class="memdesc:aee7828ae2eece2bace8e476dacc2bc12"><td class="mdescLeft">&#160;</td><td class="mdescRight">is device ready <a href="#aee7828ae2eece2bace8e476dacc2bc12">More...</a><br /></td></tr>
176<tr class="separator:aee7828ae2eece2bace8e476dacc2bc12"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<tr class="memitem:a75e82ca2ae2fb7c39d973dd3d16bc698"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75e82ca2ae2fb7c39d973dd3d16bc698"></a>
178virtual <a class="el" href="classflair_1_1core_1_1_data_type.html">DataType</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetInputDataType</b> () const </td></tr>
179<tr class="separator:a75e82ca2ae2fb7c39d973dd3d16bc698"><td class="memSeparator" colspan="2">&#160;</td></tr>
180<tr class="memitem:aa325be57d48b268006120dde75dd65cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa325be57d48b268006120dde75dd65cc"></a>
181virtual <a class="el" href="classflair_1_1core_1_1_data_type.html">DataType</a> const &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetOutputDataType</b> () const </td></tr>
182<tr class="separator:aa325be57d48b268006120dde75dd65cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
183<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>
184<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>
185<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>
186<tr class="separator:aec92383fd5bf68d9df10414862b7e95c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<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>
188<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>
189<tr class="separator:aa2bde0e6677bbef705c96c93cb06ad09 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
190<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>
191<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>
192<tr class="separator:a9b0344dff7e1c05424d9152c8274523a inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
193<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>
194<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>
195<tr class="separator:a609a250ec037fbcaf8957c8f1dcbfc53 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
196<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>
197<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>
198<tr class="separator:a360c112cc3017a5152ebf6e84d2efa70 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
199<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>
200<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>
201<tr class="separator:ae22db4d723ec2d50b3ba48f26a6a770c inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
202<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>
203<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>
204<tr class="separator:a344f81cd35805a9501098bf727ac1a10 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
205<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>
206<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>
207<tr class="separator:af001feba14fc053aa778e61080a0b4cf inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
208<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>
209<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>
210<tr class="separator:a168b18451b2ee6126e1e81d452005ff6 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
211<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>
212<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>
213<tr class="separator:a3ca9694d29ec2b0491739879685df5ca inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
214<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>
215<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>
216<tr class="separator:a36cdd7f556e78b1bddd1d1fe4264bb85 inherit pub_methods_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
217</table><table class="memberdecls">
218<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
219Protected Member Functions</h2></td></tr>
220<tr class="memitem:a3df9057ae23eb34f1b1dae8e7a4a9efc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#a3df9057ae23eb34f1b1dae8e7a4a9efc">ProcessUpdate</a> (<a class="el" href="classflair_1_1core_1_1io__data.html">io_data</a> *data)</td></tr>
221<tr class="memdesc:a3df9057ae23eb34f1b1dae8e7a4a9efc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process the childs of type <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a>, and log if needed. <a href="#a3df9057ae23eb34f1b1dae8e7a4a9efc">More...</a><br /></td></tr>
222<tr class="separator:a3df9057ae23eb34f1b1dae8e7a4a9efc"><td class="memSeparator" colspan="2">&#160;</td></tr>
223<tr class="memitem:a120fdcc3d50f6f076084cb6943fdf412"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classflair_1_1core_1_1_i_o_device.html#a120fdcc3d50f6f076084cb6943fdf412">SetIsReady</a> (bool status)</td></tr>
224<tr class="memdesc:a120fdcc3d50f6f076084cb6943fdf412"><td class="mdescLeft">&#160;</td><td class="mdescRight">set is ready <a href="#a120fdcc3d50f6f076084cb6943fdf412">More...</a><br /></td></tr>
225<tr class="separator:a120fdcc3d50f6f076084cb6943fdf412"><td class="memSeparator" colspan="2">&#160;</td></tr>
226</table><table class="memberdecls">
227<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
228Additional Inherited Members</h2></td></tr>
229<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>
230<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,
231<b>Red</b> = 31,
232<b>Green</b> = 32,
233<b>Orange</b> = 33
234 }</td></tr>
235<tr class="separator:aed5fccda511f97487040fed29f4efc97 inherit pub_types_classflair_1_1core_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
236</table>
237<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
238<div class="textblock"><p>Abstract class for input/ouput system. </p>
239<p>An input/output system is generally used to describe a sensor, an actuator or a filter. <br />
240 These systems can be linked (for exemple a sensor with a filter), when an <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> is created with a parent of type <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a>. In this case, an update of the parent's data will call an update of the child's data (for exemple when a sensor gets new datas, a filter is automatically called). <br />
241 Output of this object can also be sent to a shared memory using the OutputToShMem method; in order to use it with an external program. </p>
242</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
243<a class="anchor" id="a9693b497752b466891eaafeb34bec4d3"></a>
244<div class="memitem">
245<div class="memproto">
246 <table class="memname">
247 <tr>
248 <td class="memname">flair::core::IODevice::IODevice </td>
249 <td>(</td>
250 <td class="paramtype">const <a class="el" href="classflair_1_1core_1_1_object.html">Object</a> *&#160;</td>
251 <td class="paramname"><em>parent</em>, </td>
252 </tr>
253 <tr>
254 <td class="paramkey"></td>
255 <td></td>
256 <td class="paramtype">std::string&#160;</td>
257 <td class="paramname"><em>name</em>&#160;</td>
258 </tr>
259 <tr>
260 <td></td>
261 <td>)</td>
262 <td></td><td></td>
263 </tr>
264 </table>
265</div><div class="memdoc">
266
267<p>Constructor. </p>
268<p>Construct an <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> of <a class="el" href="classflair_1_1core_1_1_object.html" title="Base class for all Framework&#39;s classes. ">Object</a>'s type "IODevice" (see <a class="el" href="classflair_1_1core_1_1_object.html#a609a250ec037fbcaf8957c8f1dcbfc53" title="Type. ">Object::ObjectType</a>). <br />
269 If parent's <a class="el" href="classflair_1_1core_1_1_object.html#a609a250ec037fbcaf8957c8f1dcbfc53" title="Type. ">Object::ObjectType</a> is also "IODevice", this <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> will be linked to its parent (see <a class="el" href="classflair_1_1core_1_1_i_o_device.html#a3df9057ae23eb34f1b1dae8e7a4a9efc" title="Process the childs of type IODevice, and log if needed. ">ProcessUpdate()</a>).</p>
270<dl class="params"><dt>Parameters</dt><dd>
271 <table class="params">
272 <tr><td class="paramname">parent</td><td>parent </td></tr>
273 <tr><td class="paramname">name</td><td>name </td></tr>
274 </table>
275 </dd>
276</dl>
277
278</div>
279</div>
280<a class="anchor" id="a05246988b486def40926d8491e1bcc5f"></a>
281<div class="memitem">
282<div class="memproto">
283<table class="mlabels">
284 <tr>
285 <td class="mlabels-left">
286 <table class="memname">
287 <tr>
288 <td class="memname">virtual flair::core::IODevice::~IODevice </td>
289 <td>(</td>
290 <td class="paramname"></td><td>)</td>
291 <td></td>
292 </tr>
293 </table>
294 </td>
295 <td class="mlabels-right">
296<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
297 </tr>
298</table>
299</div><div class="memdoc">
300
301<p>Destructor. </p>
302
303</div>
304</div>
305<h2 class="groupheader">Member Function Documentation</h2>
306<a class="anchor" id="af7b42de6bb3893df860063228b55c229"></a>
307<div class="memitem">
308<div class="memproto">
309 <table class="memname">
310 <tr>
311 <td class="memname">void flair::core::IODevice::AddDeviceToLog </td>
312 <td>(</td>
313 <td class="paramtype">const <a class="el" href="classflair_1_1core_1_1_i_o_device.html">IODevice</a> *&#160;</td>
314 <td class="paramname"><em>device</em></td><td>)</td>
315 <td></td>
316 </tr>
317 </table>
318</div><div class="memdoc">
319
320<p>Add an <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> to the logs. </p>
321<p>The <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> will be automatically logged among this <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> logs, if logging is enabled (see SetDataToLog(), <a class="el" href="classflair_1_1core_1_1_framework_manager.html#a1cbc5e8296c0f36551210e13251516ae" title="Start logging. ">FrameworkManager::StartLog</a> and <a class="el" href="classflair_1_1core_1_1_framework_manager.html#a9f2750ce913b492206761340c666bbb6" title="Add log element. ">FrameworkManager::AddDeviceToLog</a>). <br />
322Logging happens when <a class="el" href="classflair_1_1core_1_1_i_o_device.html#a3df9057ae23eb34f1b1dae8e7a4a9efc" title="Process the childs of type IODevice, and log if needed. ">ProcessUpdate()</a> is called. <br />
323Note that when an <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> is just added for logs (ie. no parent/child link between the two <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a>), UpdateFrom() is not automatically called.</p>
324<dl class="params"><dt>Parameters</dt><dd>
325 <table class="params">
326 <tr><td class="paramname">device</td><td><a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> to log </td></tr>
327 </table>
328 </dd>
329</dl>
330
331</div>
332</div>
333<a class="anchor" id="a2e0b7af75abdbf39843d8bf2e45f08b9"></a>
334<div class="memitem">
335<div class="memproto">
336 <table class="memname">
337 <tr>
338 <td class="memname">void flair::core::IODevice::AddDataToLog </td>
339 <td>(</td>
340 <td class="paramtype">const <a class="el" href="classflair_1_1core_1_1io__data.html">io_data</a> *&#160;</td>
341 <td class="paramname"><em>data</em></td><td>)</td>
342 <td></td>
343 </tr>
344 </table>
345</div><div class="memdoc">
346
347<p>Add an <a class="el" href="classflair_1_1core_1_1io__data.html" title="Abstract class for data types. ">io_data</a> to the log. </p>
348<p>The <a class="el" href="classflair_1_1core_1_1io__data.html" title="Abstract class for data types. ">io_data</a> will be automatically logged if enabled (see <a class="el" href="classflair_1_1core_1_1_framework_manager.html#a1cbc5e8296c0f36551210e13251516ae" title="Start logging. ">FrameworkManager::StartLog</a> and <a class="el" href="classflair_1_1core_1_1_framework_manager.html#a9f2750ce913b492206761340c666bbb6" title="Add log element. ">FrameworkManager::AddDeviceToLog</a>), during call to <a class="el" href="classflair_1_1core_1_1_i_o_device.html#a3df9057ae23eb34f1b1dae8e7a4a9efc" title="Process the childs of type IODevice, and log if needed. ">ProcessUpdate()</a>.</p>
349<dl class="params"><dt>Parameters</dt><dd>
350 <table class="params">
351 <tr><td class="paramname">data</td><td>data to log </td></tr>
352 </table>
353 </dd>
354</dl>
355
356</div>
357</div>
358<a class="anchor" id="a12d811c6926fb86da6b47f889109da66"></a>
359<div class="memitem">
360<div class="memproto">
361 <table class="memname">
362 <tr>
363 <td class="memname">void flair::core::IODevice::OutputToShMem </td>
364 <td>(</td>
365 <td class="paramtype">bool&#160;</td>
366 <td class="paramname"><em>enabled</em></td><td>)</td>
367 <td></td>
368 </tr>
369 </table>
370</div><div class="memdoc">
371
372<p>Send the output to a shared memory. </p>
373<p>Use this method to output log datas to a shared memory. This can be usefull to get datas from an external progam. <br />
374Output happens when <a class="el" href="classflair_1_1core_1_1_i_o_device.html#a3df9057ae23eb34f1b1dae8e7a4a9efc" title="Process the childs of type IODevice, and log if needed. ">ProcessUpdate()</a> is called. <br />
375The name and the structure of the shared memory will be displayed when this method is called with true as argument. <br />
376By default it is not enabled.</p>
377<dl class="params"><dt>Parameters</dt><dd>
378 <table class="params">
379 <tr><td class="paramname">enabled</td><td>true to enable the output, false otherwise </td></tr>
380 </table>
381 </dd>
382</dl>
383
384</div>
385</div>
386<a class="anchor" id="aee7828ae2eece2bace8e476dacc2bc12"></a>
387<div class="memitem">
388<div class="memproto">
389 <table class="memname">
390 <tr>
391 <td class="memname">bool flair::core::IODevice::IsReady </td>
392 <td>(</td>
393 <td class="paramtype">void&#160;</td>
394 <td class="paramname"></td><td>)</td>
395 <td> const</td>
396 </tr>
397 </table>
398</div><div class="memdoc">
399
400<p>is device ready </p>
401<p>Use it check if a device is ready or not. See also setIsReady.</p>
402<dl class="section return"><dt>Returns</dt><dd>true if device is ready </dd></dl>
403
404</div>
405</div>
406<a class="anchor" id="a3df9057ae23eb34f1b1dae8e7a4a9efc"></a>
407<div class="memitem">
408<div class="memproto">
409<table class="mlabels">
410 <tr>
411 <td class="mlabels-left">
412 <table class="memname">
413 <tr>
414 <td class="memname">void flair::core::IODevice::ProcessUpdate </td>
415 <td>(</td>
416 <td class="paramtype"><a class="el" href="classflair_1_1core_1_1io__data.html">io_data</a> *&#160;</td>
417 <td class="paramname"><em>data</em></td><td>)</td>
418 <td></td>
419 </tr>
420 </table>
421 </td>
422 <td class="mlabels-right">
423<span class="mlabels"><span class="mlabel">protected</span></span> </td>
424 </tr>
425</table>
426</div><div class="memdoc">
427
428<p>Process the childs of type <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a>, and log if needed. </p>
429<p>This method must be called after computing datas; generally at the end of the reimplemented UpdateFrom or after acquiring datas in case of a sensor. <br />
430It will call UpdateFrom methods of each child of type <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a>, and log all datas (this <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> and its childs) if logging is enabled (see SetDataToLog(), <a class="el" href="classflair_1_1core_1_1_i_o_device.html#af7b42de6bb3893df860063228b55c229" title="Add an IODevice to the logs. ">AddDeviceToLog()</a>, <a class="el" href="classflair_1_1core_1_1_framework_manager.html#a1cbc5e8296c0f36551210e13251516ae" title="Start logging. ">FrameworkManager::StartLog</a> and <a class="el" href="classflair_1_1core_1_1_framework_manager.html#a9f2750ce913b492206761340c666bbb6" title="Add log element. ">FrameworkManager::AddDeviceToLog</a>). <br />
431If a thread is waiting on this <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> (see <a class="el" href="classflair_1_1core_1_1_thread.html#a2b5b5f3cf400729419bd864b654af252" title="Wait update of an IODevice. ">Thread::WaitUpdate</a>), it will be resumed.</p>
432<dl class="params"><dt>Parameters</dt><dd>
433 <table class="params">
434 <tr><td class="paramname">data</td><td>data to process </td></tr>
435 </table>
436 </dd>
437</dl>
438
439</div>
440</div>
441<a class="anchor" id="a120fdcc3d50f6f076084cb6943fdf412"></a>
442<div class="memitem">
443<div class="memproto">
444<table class="mlabels">
445 <tr>
446 <td class="mlabels-left">
447 <table class="memname">
448 <tr>
449 <td class="memname">void flair::core::IODevice::SetIsReady </td>
450 <td>(</td>
451 <td class="paramtype">bool&#160;</td>
452 <td class="paramname"><em>status</em></td><td>)</td>
453 <td></td>
454 </tr>
455 </table>
456 </td>
457 <td class="mlabels-right">
458<span class="mlabels"><span class="mlabel">protected</span></span> </td>
459 </tr>
460</table>
461</div><div class="memdoc">
462
463<p>set is ready </p>
464<p>Sets if the device is ready or not. By default the <a class="el" href="classflair_1_1core_1_1_i_o_device.html" title="Abstract class for input/ouput system. ">IODevice</a> is not ready.<br />
465See also isReady.</p>
466<dl class="params"><dt>Parameters</dt><dd>
467 <table class="params">
468 <tr><td class="paramname">status</td><td>status </td></tr>
469 </table>
470 </dd>
471</dl>
472
473</div>
474</div>
475</div><!-- contents -->
476</div><!-- doc-content -->
477<!-- start footer part -->
478<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
479 <ul>
480 <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_i_o_device.html">IODevice</a></li>
481 <li class="footer">Generated on Tue Jul 4 2017 07:52:55 for Flair by
482 <a href="http://www.doxygen.org/index.html">
483 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
484 </ul>
485</div>
486</body>
487</html>
Note: See TracBrowser for help on using the repository browser.