<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_class_bridge" xml:lang="en-US">
<title>Bridge Class Reference</title>
<indexterm><primary>Bridge</primary></indexterm>
<para>
<computeroutput>#include &lt;Bridge.h&gt;</computeroutput>
</para>
Inheritance diagram for Bridge:<para>
    <informalfigure>
        <mediaobject>
            <imageobject>
                <imagedata width="50%" align="center" valign="middle" scalefit="0" fileref="../../dd/ded/class_bridge__inherit__graph.svg"></imagedata>
            </imageobject>
        </mediaobject>
    </informalfigure>
</para>
<simplesect>
    <title>Public Member Functions    </title>
        <itemizedlist>
            <listitem><para><link linkend="_class_bridge_1aba1b2f4e7b334d30f82fbf59379df91e">Bridge</link> (<link linkend="_class_component">Component</link> *<link linkend="_class_timer">_owner</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_bridge_1a1948ed85bfb99938a0c8d190a77ba390">debug</link> ()</para>

<para>Virtual function to debug the component. </para>
</listitem>
            <listitem><para><link linkend="_class_s_component_info">SComponentInfo</link> * <link linkend="_class_bridge_1af272ffead8d0b6cdf2666ddf6031f0d0">hasMethod</link> (<link linkend="_types_8h_1ab95f123a6c9bcfee6a343170ef8c5f69">ushort</link> <link linkend="_class_component_1aba3a6b372b8f2efde31c1556c7107cf0">id</link>, <link linkend="_class_timer">String</link> <link linkend="_class_timer">method</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_bridge_1acc3d4d7ad26fc222fd94ba7fb377e7df">list</link> ()</para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_bridge_1a59613d8c7064c219b446e733731ef035">onMessage</link> (<link linkend="_class_timer">int</link> <link linkend="_class_component_1aba3a6b372b8f2efde31c1556c7107cf0">id</link>, <link linkend="_osr-fw-base_2src_2enums_8h_1af647086e100e6e572160d67b627db67b">E_CALLS</link> verb, <link linkend="_osr-fw-base_2src_2enums_8h_1a881f3b5416932fb0f5774c343d8bacf4">E_MessageFlags</link> <link linkend="_class_component_1ad2627608e8e3bab6ae2598f56138803a">flags</link>, <link linkend="_class_timer">const</link> <link linkend="_class_timer">void</link> *<link linkend="_class_timer">user</link>, <link linkend="_class_component">Component</link> *<link linkend="_class_timer">src</link>)</para>

<para>Handles incoming messages. </para>
</listitem>
            <listitem><para><link linkend="_class_s_component_info">SComponentInfo</link> * <link linkend="_class_bridge_1a94f5bb815a531cf26e748f134ef54527">registerMemberFunction</link> (<link linkend="_types_8h_1ab95f123a6c9bcfee6a343170ef8c5f69">ushort</link> <link linkend="_class_component_1aba3a6b372b8f2efde31c1556c7107cf0">id</link>, <link linkend="_class_component">Component</link> *<link linkend="_class_timer">clazz</link>, <link linkend="_class_timer">char</link> *<link linkend="_class_timer">method</link>, <link linkend="__component_8h_1a8a69ab8f0f634d4a87e21b0396590c7c">ComponentFnPtr</link> <link linkend="_class_timer">ptr</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_bridge_1a7d8858a01005243d2d147cf7d9d558e2">setup</link> ()</para>

<para>Virtual function to set up the component. </para>
</listitem>
        </itemizedlist>
</simplesect>
Public Member Functions inherited from <link linkend="_class_component">Component</link>        <itemizedlist>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_component_1ab0641f7dfd6a83b2bf9c0dabf913bba8">clearFlag</link> (<link linkend="_class_timer">byte</link> <link linkend="_class_timer">flag</link>)</para>

<para>Clears a specific flag for the component. </para>
</listitem>
            <listitem><para><link linkend="_class_component_1a8775db6d1a2c1afc2e77cd3c8f39da6f">Component</link> ()</para>

<para>Default constructor for the <link linkend="_class_component">Component</link> class. </para>
</listitem>
            <listitem><para><link linkend="_class_component_1a105408e9463fdbe926fe2ef78f4003f8">Component</link> (<link linkend="_class_timer">String</link> <link linkend="_class_timer">_name</link>)</para>

<para>Constructor for the <link linkend="_class_component">Component</link> class with a specified name. </para>
</listitem>
            <listitem><para><link linkend="_class_component_1aa06f9abfec867a4d76640a783543b981">Component</link> (<link linkend="_class_timer">String</link> <link linkend="_class_timer">_name</link>, <link linkend="_class_timer">short</link> <link linkend="_class_timer">_id</link>)</para>

<para>Constructor for the <link linkend="_class_component">Component</link> class with a specified name and ID. </para>
</listitem>
            <listitem><para><link linkend="_class_component_1aad8eeba8c6f6b51ef3b85f144b3f050c">Component</link> (<link linkend="_class_timer">String</link> <link linkend="_class_timer">_name</link>, <link linkend="_class_timer">short</link> <link linkend="_class_timer">_id</link>, <link linkend="_class_timer">int</link> <link linkend="_class_timer">_flags</link>)</para>

<para>Constructor for the <link linkend="_class_component">Component</link> class with a specified name, ID, and flags. </para>
</listitem>
            <listitem><para><link linkend="_class_component_1aab29a9d52d0fb0f1f68a6f1107fce504">Component</link> (<link linkend="_class_timer">String</link> <link linkend="_class_timer">_name</link>, <link linkend="_class_timer">short</link> <link linkend="_class_timer">_id</link>, <link linkend="_class_timer">int</link> <link linkend="_class_timer">_flags</link>, <link linkend="_class_component">Component</link> *<link linkend="_class_timer">_owner</link>)</para>

<para>Constructor for the <link linkend="_class_component">Component</link> class with a specified name, ID, flags, and owner. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1a2509b6b05062a9f37be00d6633448f3a">debug</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">val0</link>, <link linkend="_class_timer">short</link> <link linkend="_class_timer">val1</link>)</para>

<para>Virtual function to debug the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1a5a88f501e28538492a8b00f7256cfa88">destroy</link> ()</para>

<para>Virtual function to destroy the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_component_1a5944c18d0e1de53f2842149ca364b672">disable</link> ()</para>

<para>Disables the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_component_1af659603312b1770279f3722f8ea303a4">enable</link> ()</para>

<para>Enables the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">bool</link> <link linkend="_class_component_1a76d5c1c0f128959a0245cbceeef26443">enabled</link> ()</para>

<para>Checks if the component is enabled. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">bool</link> <link linkend="_class_component_1a6fbb2db0159837bf1e84bc4b27ff0f0a">hasFlag</link> (<link linkend="_class_timer">byte</link> <link linkend="_class_timer">flag</link>)</para>

<para>Checks if the component has a specific flag. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1ac9ad2cae93058a6aab4d57b1e7800374">info</link> ()</para>

<para>Virtual function to display information about the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1a5ee9563b1698bace212cda16a404ddb4">info</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">val0</link>, <link linkend="_class_timer">short</link> <link linkend="_class_timer">val1</link>)</para>

<para>Virtual function to display information about the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1a8f031c6c5e888711277cb9b688405477">loop</link> ()</para>

<para>Virtual function to run the component in a loop. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1a91ac0196b944c9f1c9db4142395738df">onError</link> (<link linkend="_class_timer">short</link> <link linkend="_class_component_1aba3a6b372b8f2efde31c1556c7107cf0">id</link>, <link linkend="_class_timer">short</link> error)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1abb477935ff940965ad5e5712b5785d12">onRawResponse</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">size</link>, <link linkend="_class_timer">uint8_t</link> rxBuffer[])</para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1aa872a02516634c1be99503a8de65113f">onRegisterMethods</link> (<link linkend="_class_bridge">Bridge</link> *bridge)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1a881f4ed620349bc9e0706daa12b81674">onResponse</link> (<link linkend="_class_timer">short</link> error)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_component_1a423dca2635dd4b5f3cc5e1942d0942b3">setFlag</link> (<link linkend="_class_timer">byte</link> <link linkend="_class_timer">flag</link>)</para>

<para>Sets a specific flag for the component. </para>
</listitem>
            <listitem><para><link linkend="_class_component_1ab8378fa275af98e568a7e91d33d867af">~Component</link> ()</para>

<para>Destructor for the <link linkend="_class_component">Component</link> class. </para>
</listitem>
        </itemizedlist>
Public Member Functions inherited from <link linkend="_class_modbus_gateway">ModbusGateway</link>        <itemizedlist>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_modbus_gateway_1aaed7ceff9ed90a73b3edc860d2795d7f">getAddress</link> ()</para>
</listitem>
            <listitem><para><link linkend="_osr-fw-base_2examples_2pid_2enums_8h_1aff1341ea5077cc6097a0d7db89be4cf6">MB_FC</link> <link linkend="_class_modbus_gateway_1a5c58a1e93cb3300108c27d6f3eaac3cb">getFunctionCode</link> ()</para>
</listitem>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_modbus_gateway_1a680298496fefeef0355f7fb406494aaf">getNumberAddresses</link> ()</para>
</listitem>
            <listitem><para><link linkend="_class_timer">virtual</link> <link linkend="_class_timer">String</link> <link linkend="_class_modbus_gateway_1a9903e131718805f2658f68f96389f934">getRegisterDescription</link> (<link linkend="_class_timer">short</link> flags=0)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">const</link> <link linkend="_class_timer">char</link> * <link linkend="_class_modbus_gateway_1a13a4de4fa5b5bbf94a9a91de8e0fbd5f">getRegisterMode</link> ()</para>
</listitem>
            <listitem><para><link linkend="_class_modbus_gateway_1a78bde10e865f221affe774b2850470a6">ModbusGateway</link> ()</para>
</listitem>
            <listitem><para><link linkend="_class_modbus_gateway_1aeefdee0066e75a03f92a7cd64f5cd923">ModbusGateway</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">_addr</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_modbus_gateway_1ac72b8f93fa8050a9c71bbe862f592734">ModbusGateway</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">_addr</link>, <link linkend="_class_timer">short</link> <link linkend="_class_timer">_fc</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_modbus_gateway_1ad711fa3496ac0ac5d63f7e7080e1cb3d">setAddress</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">_addr</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_modbus_gateway_1a8c7b6c6b51675430e188f6394ce954ee">setFunctionCode</link> (<link linkend="_osr-fw-base_2examples_2pid_2enums_8h_1aff1341ea5077cc6097a0d7db89be4cf6">MB_FC</link> <link linkend="_class_timer">fc</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_modbus_gateway_1ada2cf17a72c4de2a05aef802f0d4d295">setGateway</link> (<link linkend="_class_mudbus">Mudbus</link> *<link linkend="_class_modbus_gateway_1a009e368330030aac35cabd6b1daf7387">mudbus</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_modbus_gateway_1a6170d47d3030ff71417815f00229aeb2">setNumberAddresses</link> (<link linkend="_class_timer">short</link> <link linkend="_class_timer">_nbAddr</link>)</para>
</listitem>
            <listitem><para><link linkend="_class_timer">void</link> <link linkend="_class_modbus_gateway_1afc6d54612f4e6cfee3b3740c7cc550dd">setRegisterMode</link> (<link linkend="_osr-fw-base_2src_2enums_8h_1a1f6ea713f12845dd4706bc8f0d5da9cf">MB_REGISTER_MODE</link> mode)</para>
</listitem>
        </itemizedlist>
<simplesect>
    <title>Static Public Attributes    </title>
        <itemizedlist>
            <listitem><para><link linkend="_class_timer">static</link> <link linkend="_class_timer">constexpr</link> <link linkend="_class_timer">char</link> * <link linkend="_class_bridge_1a0e8de61f081eb9d36da2566925e5861d">METHOD_DELIMITER</link> = <link linkend="_macros_8h_1a17c46249a379fcc3db1131c6b7d95de6">C_STR</link>(&quot;:&quot;)</para>
</listitem>
        </itemizedlist>
</simplesect>
Static Public Attributes inherited from <link linkend="_class_component">Component</link>        <itemizedlist>
            <listitem><para><link linkend="_class_timer">static</link> <link linkend="_class_timer">const</link> <link linkend="_class_timer">int</link> <link linkend="_class_component_1a2435f54f8ea88aa317f562b97c48175e">COMPONENT_DEFAULT</link> = 1 &lt;&lt; OBJECT_RUN_FLAGS::E_OF_LOOP | 1 &lt;&lt; OBJECT_RUN_FLAGS::E_OF_SETUP</para>

<para>The default run flags for a component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">static</link> <link linkend="_class_timer">const</link> <link linkend="_class_timer">int</link> <link linkend="_class_component_1aacfebfd04c61064f59bd407923e3408a">COMPONENT_NO_ID</link> = 0</para>

<para>The default ID for a component. </para>
</listitem>
        </itemizedlist>
<simplesect>
    <title>Additional Inherited Members    </title>
Public Attributes inherited from <link linkend="_class_component">Component</link>        <itemizedlist>
            <listitem><para><link linkend="_class_timer">int</link> <link linkend="_class_component_1ad2627608e8e3bab6ae2598f56138803a">flags</link></para>

<para>The run flags for the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">const</link> <link linkend="_class_timer">short</link> <link linkend="_class_component_1aba3a6b372b8f2efde31c1556c7107cf0">id</link></para>

<para>The ID of the component. </para>
</listitem>
            <listitem><para><link linkend="_types_8h_1ab14fc3b0e7b9535ec25836108ce96a45">millis_t</link> <link linkend="_class_component_1a9bd1750a52031e6b5d60a0f6c7de5c8b">last</link></para>

<para>The last tick time in milliseconds. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">String</link> <link linkend="_class_component_1acf12509f5baeb0096cad073f7d3575d4">name</link></para>

<para>The name of the component. </para>
</listitem>
            <listitem><para><link linkend="_class_timer">int</link> <link linkend="_class_component_1a89ecb049c2d7c026913e60f1393237dc">nFlags</link></para>

<para>The network capabilities of the component. </para>
</listitem>
            <listitem><para><link linkend="_types_8h_1ab14fc3b0e7b9535ec25836108ce96a45">millis_t</link> <link linkend="_class_component_1a62bafa07263df702e1c33cd60ddc25b8">now</link></para>

<para>The current time in milliseconds. </para>
</listitem>
            <listitem><para><link linkend="_class_component">Component</link> * <link linkend="_class_component_1abe8dcb7fc6074ff862cc4b9866196e21">owner</link></para>

<para>The owner of the component. </para>
</listitem>
        </itemizedlist>
</simplesect>
Public Attributes inherited from <link linkend="_class_modbus_gateway">ModbusGateway</link>        <itemizedlist>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_modbus_gateway_1afe42c727b139008073bdeefbfd039eec">addr</link></para>
</listitem>
            <listitem><para><link linkend="_osr-fw-base_2examples_2pid_2enums_8h_1aff1341ea5077cc6097a0d7db89be4cf6">MB_FC</link> <link linkend="_class_modbus_gateway_1adfa9598d37ed50b06433e58c92389048">fn</link></para>
</listitem>
            <listitem><para><link linkend="_types_8h_1a65f85814a8290f9797005d3b28e7e5fc">uchar</link> <link linkend="_class_modbus_gateway_1a60eadb64880be33ef9f8fafc2fd0979f">lastMQSlot</link></para>
</listitem>
            <listitem><para><link linkend="_class_mudbus">Mudbus</link> * <link linkend="_class_modbus_gateway_1a009e368330030aac35cabd6b1daf7387">mudbus</link></para>
</listitem>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_modbus_gateway_1a6652fb1d4b0a59277b996b2fb4de4e32">nbAddr</link></para>
</listitem>
            <listitem><para><link linkend="_class_timer">short</link> <link linkend="_class_modbus_gateway_1a6a5d7233939da7d48dcd6c977bdc960b">registerMode</link></para>
</listitem>
        </itemizedlist>
<section>
<title>Detailed Description</title>
<para>
Definition at line <link linkend="__bridge_8h_source_1l00026">26</link> of file <link linkend="__bridge_8h_source">Bridge.h</link>.</para>
</section>
<section>
<title>Constructor &amp; Destructor Documentation</title>
<anchor xml:id="_class_bridge_1aba1b2f4e7b334d30f82fbf59379df91e"/><section>
    <title>Bridge()</title>
<indexterm><primary>Bridge</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>Bridge</secondary></indexterm>
<para><computeroutput>Bridge::Bridge (<link linkend="_class_component">Component</link> * _owner)</computeroutput></para><para>
Definition at line <link linkend="__bridge_8cpp_source_1l00019">19</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00019 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;:&#32;<link linkend="_class_component_1a8775db6d1a2c1afc2e77cd3c8f39da6f">Component</link>(<emphasis role="stringliteral">&quot;Bridge&quot;</emphasis>,&#32;0,&#32;<link linkend="_class_component_1a2435f54f8ea88aa317f562b97c48175e">Component::COMPONENT_DEFAULT</link>,&#32;<link linkend="_class_timer">_owner</link>)
00020 {
00021 }
</programlisting></section>
</section>
<section>
<title>Member Function Documentation</title>
<anchor xml:id="_class_bridge_1a1948ed85bfb99938a0c8d190a77ba390"/><section>
    <title>debug()</title>
<indexterm><primary>debug</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>debug</secondary></indexterm>
<para><computeroutput><link linkend="_class_timer">short</link> Bridge::debug ( )<computeroutput>[virtual]</computeroutput></computeroutput></para><para>

<para>Virtual function to debug the component. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters</title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
<entry>stream</entry><entry>
<para>The stream to output the debug information to. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns</title>

<para>The error code indicating the success or failure of the operation. </para>
</formalpara>
</para>
<para>
Reimplemented from <link linkend="_class_component_1ab2e2c2e11b072136d6be468b8db54d22">Component</link>.</para>
<para>
Definition at line <link linkend="__bridge_8cpp_source_1l00041">41</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00042 {
00043 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_firmware__v2__cm_2enums_8h_1a1e7cc741c56207a8872ea58373276925">E_OK</link>;
00044 }
</programlisting></section>
<anchor xml:id="_class_bridge_1af272ffead8d0b6cdf2666ddf6031f0d0"/><section>
    <title>hasMethod()</title>
<indexterm><primary>hasMethod</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>hasMethod</secondary></indexterm>
<para><computeroutput><link linkend="_class_s_component_info">SComponentInfo</link> * Bridge::hasMethod (<link linkend="_types_8h_1ab95f123a6c9bcfee6a343170ef8c5f69">ushort</link> id, <link linkend="_class_timer">String</link> method)</computeroutput></para><para>
Definition at line <link linkend="__bridge_8cpp_source_1l00028">28</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00029 {
00030 &#32;&#32;&#32;&#32;<link linkend="_types_8h_1a65f85814a8290f9797005d3b28e7e5fc">uchar</link>&#32;<link linkend="_class_timer">s</link>&#32;=&#32;<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.size();
00031 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">for</emphasis>&#32;(<link linkend="_types_8h_1a65f85814a8290f9797005d3b28e7e5fc">uchar</link>&#32;<link linkend="_class_timer">i</link>&#32;=&#32;0;&#32;<link linkend="_class_timer">i</link>&#32;&lt;&#32;<link linkend="_class_timer">s</link>;&#32;<link linkend="_class_timer">i</link>++)
00032 &#32;&#32;&#32;&#32;{
00033 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_s_component_info">SComponentInfo</link>&#32;*val&#32;=&#32;<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.<link linkend="_class_timer_1a0c3e9b1ed284d21766d8c33889d6a5fb">at</link>(<link linkend="_class_timer">i</link>);
00034 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(val-&gt;<link linkend="_class_s_component_info_1a4ed5bbc60456634fc41bcb7b9ba4bd90">key</link>&#32;==&#32;<emphasis role="keywordtype">id</emphasis>&#32;&amp;&amp;&#32;val-&gt;<link linkend="_class_s_component_info_1ab8ac89317d692cacf0995157493a155a">methodName</link>.equals(methodName))
00035 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;{
00036 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;val;
00037 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
00038 &#32;&#32;&#32;&#32;}
00039 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00040 }
</programlisting></section>
<anchor xml:id="_class_bridge_1acc3d4d7ad26fc222fd94ba7fb377e7df"/><section>
    <title>list()</title>
<indexterm><primary>list</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>list</secondary></indexterm>
<para><computeroutput><link linkend="_class_timer">short</link> Bridge::list ( )</computeroutput></para><para>
Definition at line <link linkend="__bridge_8cpp_source_1l00045">45</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00046 {
00047 &#32;&#32;&#32;&#32;<link linkend="_types_8h_1a65f85814a8290f9797005d3b28e7e5fc">uchar</link>&#32;<link linkend="_class_timer">s</link>&#32;=&#32;<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.size();
00048 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">for</emphasis>&#32;(<link linkend="_types_8h_1a65f85814a8290f9797005d3b28e7e5fc">uchar</link>&#32;<link linkend="_class_timer">i</link>&#32;=&#32;0;&#32;<link linkend="_class_timer">i</link>&#32;&lt;&#32;<link linkend="_class_timer">s</link>;&#32;<link linkend="_class_timer">i</link>++)
00049 &#32;&#32;&#32;&#32;{
00050 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_s_component_info">SComponentInfo</link>&#32;*val&#32;=&#32;<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.<link linkend="_class_timer_1a0c3e9b1ed284d21766d8c33889d6a5fb">at</link>(<link linkend="_class_timer">i</link>);
00051 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.verboseln(<emphasis role="stringliteral">&quot;\tRegistered&#32;Method:&#32;&#32;%d::%s::%s&quot;</emphasis>,&#32;val-&gt;<link linkend="_class_s_component_info_1a4ed5bbc60456634fc41bcb7b9ba4bd90">key</link>,&#32;((<link linkend="_class_component">Component</link>&#32;*)val-&gt;<link linkend="_class_s_component_info_1a41beda15f6febcbd36c291a978e30a0e">instance</link>)-&gt;name.c_str(),&#32;val-&gt;<link linkend="_class_s_component_info_1ab8ac89317d692cacf0995157493a155a">methodName</link>.c_str());
00052 &#32;&#32;&#32;&#32;}
00053 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_firmware__v2__cm_2enums_8h_1a1e7cc741c56207a8872ea58373276925">E_OK</link>;
00054 }
</programlisting></section>
<anchor xml:id="_class_bridge_1a59613d8c7064c219b446e733731ef035"/><section>
    <title>onMessage()</title>
<indexterm><primary>onMessage</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>onMessage</secondary></indexterm>
<para><computeroutput><link linkend="_class_timer">short</link> Bridge::onMessage (<link linkend="_class_timer">int</link> id, <link linkend="_osr-fw-base_2src_2enums_8h_1af647086e100e6e572160d67b627db67b">E_CALLS</link> verb, <link linkend="_osr-fw-base_2src_2enums_8h_1a881f3b5416932fb0f5774c343d8bacf4">E_MessageFlags</link> flags, <link linkend="_class_timer">const</link> <link linkend="_class_timer">void</link> * user, <link linkend="_class_component">Component</link> * src)<computeroutput>[virtual]</computeroutput></computeroutput></para><para>

<para>Handles incoming messages. </para>
</para>

<para>This function is called when a message is received by the component. It processes the message and returns a short value indicating the status of the operation.</para>

<para>
                <formalpara>
                    <title>
Parameters</title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
<entry>id</entry><entry>
<para>The ID of the message. </para>
</entry>
                            </row>
                            <row>
<entry>verb</entry><entry>
<para>The type of operation to be performed. </para>
</entry>
                            </row>
                            <row>
<entry>flags</entry><entry>
<para>The flags associated with the message. </para>
</entry>
                            </row>
                            <row>
<entry>user</entry><entry>
<para>A pointer to user-defined data. </para>
</entry>
                            </row>
                            <row>
<entry>src</entry><entry>
<para>The source component that sent the message. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns</title>

<para>A short value indicating the status of the operation. </para>
</formalpara>
</para>
<para>
Reimplemented from <link linkend="_class_component_1a9551f96bacf5477e5efb04ad3985e95f">Component</link>.</para>
<para>
Definition at line <link linkend="__bridge_8cpp_source_1l00111">111</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00112 {
00113 
00114 <emphasis role="preprocessor">#ifdef&#32;BRIDGE_DEBUG_CALL_METHOD</emphasis>
00115 &#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.verboseln(<emphasis role="stringliteral">&quot;Bridge::onMessage:&#32;%d::%d::%d::%s&#32;-&#32;from&#32;&quot;</emphasis>,&#32;<emphasis role="keywordtype">id</emphasis>,&#32;verb,&#32;<link linkend="_class_component_1ad2627608e8e3bab6ae2598f56138803a">flags</link>,&#32;<link linkend="_macros_8h_1a4edb3f1df43ec8c4a51ba851ad5c0ac5">CC_STR</link>(<link linkend="_class_timer">user</link>),&#32;<link linkend="_class_timer">src</link>-&gt;name.c_str());
00116 <emphasis role="preprocessor">#endif</emphasis>
00117 
00118 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">switch</emphasis>&#32;(verb)
00119 &#32;&#32;&#32;&#32;{
00120 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">case</emphasis>&#32;E_CALLS::EC_USER:
00121 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">case</emphasis>&#32;E_CALLS::EC_NONE:
00122 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">case</emphasis>&#32;E_CALLS::EC_COMMAND:
00123 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">case</emphasis>&#32;E_CALLS::EC_FUNC:
00124 &#32;&#32;&#32;&#32;{
00125 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_firmware__v2__cm_2enums_8h_1a1e7cc741c56207a8872ea58373276925">E_OK</link>;
00126 &#32;&#32;&#32;&#32;}
00127 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">case</emphasis>&#32;E_CALLS::EC_METHOD:
00128 &#32;&#32;&#32;&#32;{
00129 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">char</emphasis>&#32;*<link linkend="_class_timer">strings</link>[4];
00130 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">char</emphasis>&#32;*<link linkend="_class_timer">ptr</link>&#32;=&#32;<link linkend="_class_timer">NULL</link>;
00131 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">byte</emphasis>&#32;index&#32;=&#32;0;
00132 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">ptr</link>&#32;=&#32;<link linkend="_class_timer">strtok</link>(<link linkend="_macros_8h_1a17c46249a379fcc3db1131c6b7d95de6">C_STR</link>(<link linkend="_class_timer">user</link>),&#32;<link linkend="_macros_8h_1a4edb3f1df43ec8c4a51ba851ad5c0ac5">CC_STR</link>(<link linkend="_class_bridge_1a0e8de61f081eb9d36da2566925e5861d">Bridge::METHOD_DELIMITER</link>));
00133 
00134 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">while</emphasis>&#32;(<link linkend="_class_timer">ptr</link>&#32;!=&#32;<link linkend="_class_timer">NULL</link>&#32;&amp;&amp;&#32;index&#32;&lt;&#32;<link linkend="__bridge_8cpp_1a8338ebf38a69a02d4fcdf255647dcd7b">NB_PAYLOAD_ELEMENTS</link>)
00135 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;{
00136 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">strings</link>[index]&#32;=&#32;<link linkend="_class_timer">ptr</link>;
00137 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;index++;
00138 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">ptr</link>&#32;=&#32;<link linkend="_class_timer">strtok</link>(<link linkend="_class_timer">NULL</link>,&#32;<link linkend="_macros_8h_1a4edb3f1df43ec8c4a51ba851ad5c0ac5">CC_STR</link>(<link linkend="_class_bridge_1a0e8de61f081eb9d36da2566925e5861d">Bridge::METHOD_DELIMITER</link>));
00139 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
00140 
00141 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">char</emphasis>&#32;*<link linkend="_class_timer">_method</link>&#32;=&#32;<link linkend="_class_timer">strings</link>[0];
00142 
00143 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_s_component_info">SComponentInfo</link>&#32;*<link linkend="_class_timer">method</link>&#32;=&#32;<link linkend="_class_bridge_1af272ffead8d0b6cdf2666ddf6031f0d0">hasMethod</link>(<emphasis role="keywordtype">id</emphasis>,&#32;<link linkend="_class_timer">_method</link>);
00144 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(<link linkend="_class_timer">method</link>)
00145 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;{
00146 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">short</emphasis>&#32;<link linkend="_class_timer">arg0</link>&#32;=&#32;<link linkend="__string_utils_8cpp_1aaf96ccfd231b06b447ccb35164456a8d">convertTo&lt;short&gt;</link>(<link linkend="_macros_8h_1a4edb3f1df43ec8c4a51ba851ad5c0ac5">CC_STR</link>(<link linkend="_class_timer">strings</link>[1]));
00147 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">short</emphasis>&#32;<link linkend="_class_timer">arg1</link>&#32;=&#32;<link linkend="__string_utils_8cpp_1aaf96ccfd231b06b447ccb35164456a8d">convertTo&lt;short&gt;</link>(<link linkend="_macros_8h_1a4edb3f1df43ec8c4a51ba851ad5c0ac5">CC_STR</link>(<link linkend="_class_timer">strings</link>[2]));
00148 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_component">Component</link>&#32;*<link linkend="_class_timer">component</link>&#32;=&#32;(<link linkend="_class_component">Component</link>&#32;*)<link linkend="_class_timer">method</link>-&gt;instance;
00149 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="__component_8h_1a8a69ab8f0f634d4a87e21b0396590c7c">ComponentFnPtr</link>&#32;<link linkend="_class_timer">ptr</link>&#32;=&#32;<link linkend="_class_timer">method</link>-&gt;mPtr;
00150 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordtype">short</emphasis>&#32;<link linkend="_class_timer">ret</link>&#32;=&#32;(<link linkend="_class_timer">component</link>-&gt;*<link linkend="_class_timer">ptr</link>)(<link linkend="_class_timer">arg0</link>,&#32;<link linkend="_class_timer">arg1</link>);
00151 <emphasis role="preprocessor">#ifdef&#32;BRIDGE_DEBUG_CALL_METHOD</emphasis>
00152 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.verboseln(<emphasis role="stringliteral">&quot;Called&#32;method:&#32;%s(%d)::%s&#32;with&#32;:&#32;%d&#32;|&#32;%d&#32;=&#32;%d&quot;</emphasis>,&#32;<link linkend="_class_timer">component</link>-&gt;name.c_str(),&#32;<link linkend="_class_component_1aba3a6b372b8f2efde31c1556c7107cf0">id</link>,&#32;<link linkend="_class_timer">_method</link>,&#32;<link linkend="_class_timer">arg0</link>,&#32;<link linkend="_class_timer">arg1</link>,&#32;<link linkend="_class_timer">ret</link>);
00153 <emphasis role="preprocessor">#endif</emphasis>
00154 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">ret</link>;
00155 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
00156 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">else</emphasis>
00157 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;{
00158 <emphasis role="preprocessor">#ifdef&#32;BRIDGE_DEBUG_CALL_METHOD</emphasis>
00159 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.errorln(<emphasis role="stringliteral">&quot;Method&#32;not&#32;found:&#32;%d::%s&quot;</emphasis>,&#32;<emphasis role="keywordtype">id</emphasis>,&#32;<link linkend="_class_timer">_method</link>);
00160 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_bridge_1acc3d4d7ad26fc222fd94ba7fb377e7df">list</link>();
00161 <emphasis role="preprocessor">#endif</emphasis>
00162 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
00163 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_firmware__v2__cm_2enums_8h_1a1e7cc741c56207a8872ea58373276925">E_OK</link>;
00164 &#32;&#32;&#32;&#32;}
00165 &#32;&#32;&#32;&#32;}
00166 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_error__codes_8h_1a9c12061ab40785715ea031861dffddf9">E_NOT_FOUND</link>;
00167 }
</programlisting></section>
<anchor xml:id="_class_bridge_1a94f5bb815a531cf26e748f134ef54527"/><section>
    <title>registerMemberFunction()</title>
<indexterm><primary>registerMemberFunction</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>registerMemberFunction</secondary></indexterm>
<para><computeroutput><link linkend="_class_s_component_info">SComponentInfo</link> * Bridge::registerMemberFunction (<link linkend="_types_8h_1ab95f123a6c9bcfee6a343170ef8c5f69">ushort</link> id, <link linkend="_class_component">Component</link> * clazz, <link linkend="_class_timer">char</link> * method, <link linkend="__component_8h_1a8a69ab8f0f634d4a87e21b0396590c7c">ComponentFnPtr</link> ptr)</computeroutput></para><para>
Definition at line <link linkend="__bridge_8cpp_source_1l00056">56</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00057 {
00058 <emphasis role="preprocessor">&#32;&#32;&#32;&#32;#ifdef&#32;DISABLE_BRIDGE</emphasis>
00059 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="comment">//&#32;#pragma&#32;message(&quot;Bridge::registerMemberFunction&#32;:&#32;Bridge&#32;is&#32;disabled!&quot;)</emphasis>
00060 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00061 <emphasis role="preprocessor">&#32;&#32;&#32;&#32;#endif</emphasis>
00062 <emphasis role="preprocessor">#ifndef&#32;DISABLE_BRIDGE</emphasis>
00063 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(!<link linkend="_class_timer">clazz</link>)
00064 &#32;&#32;&#32;&#32;{
00065 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="comment">//&#32;Log.verboseln(&quot;Register&#32;member&#32;method:&#32;%d&#32;:&#32;invalid&#32;class&quot;,&#32;id);</emphasis>
00066 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00067 &#32;&#32;&#32;&#32;}
00068 
00069 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(!<link linkend="_class_timer">strlen</link>(<link linkend="_class_timer">method</link>))
00070 &#32;&#32;&#32;&#32;{
00071 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="comment">//&#32;Log.verboseln(&quot;Register&#32;member&#32;method:&#32;%d&#32;:&#32;invalid&#32;method&#32;name&quot;,&#32;id);</emphasis>
00072 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00073 &#32;&#32;&#32;&#32;}
00074 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(!<emphasis role="keywordtype">id</emphasis>)
00075 &#32;&#32;&#32;&#32;{
00076 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="comment">//&#32;Log.verboseln(&quot;Register&#32;member&#32;method:&#32;%d&#32;:&#32;invalid&#32;component&#32;id&quot;,&#32;id);</emphasis>
00077 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00078 &#32;&#32;&#32;&#32;}
00079 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.size()&#32;&gt;&#32;<link linkend="__bridge_8cpp_1a6d8c910a1fdb6d4762a05f7250e64322">MAX_COMPONENTS</link>)
00080 &#32;&#32;&#32;&#32;{
00081 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="comment">//&#32;Log.errorln(&quot;Bridge::registerMemberFunction&#32;:&#32;Max&#32;components&#32;reached&#32;:&#32;%d&quot;,&#32;MAX_COMPONENTS);</emphasis>
00082 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00083 &#32;&#32;&#32;&#32;}
00084 &#32;&#32;&#32;&#32;<link linkend="_class_s_component_info">SComponentInfo</link>&#32;*<link linkend="_class_timer">meth</link>&#32;=&#32;<link linkend="_class_bridge_1af272ffead8d0b6cdf2666ddf6031f0d0">hasMethod</link>(<emphasis role="keywordtype">id</emphasis>,&#32;<link linkend="_class_timer">method</link>);
00085 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(<link linkend="_class_timer">meth</link>)
00086 &#32;&#32;&#32;&#32;{
00087 <emphasis role="preprocessor">#ifdef&#32;BRIDGE_DEBUG_REGISTER</emphasis>
00088 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.verboseln(<emphasis role="stringliteral">&quot;Register&#32;class&#32;member:&#32;%s::%s&#32;already&#32;registered!&quot;</emphasis>,&#32;<link linkend="_class_timer">clazz</link>,&#32;<link linkend="_class_timer">method</link>);
00089 <emphasis role="preprocessor">#endif</emphasis>
00090 &#32;&#32;&#32;&#32;}
00091 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">else</emphasis>
00092 &#32;&#32;&#32;&#32;{
00093 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">meth</link>&#32;=&#32;<emphasis role="keyword">new</emphasis>&#32;<link linkend="_class_s_component_info">SComponentInfo</link>(<emphasis role="keywordtype">id</emphasis>,&#32;<link linkend="_class_timer">clazz</link>,&#32;<link linkend="_class_timer">method</link>,&#32;<link linkend="_class_timer">ptr</link>);
00094 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.push_back(<link linkend="_class_timer">meth</link>);
00095 <emphasis role="preprocessor">#ifdef&#32;BRIDGE_DEBUG_REGISTER</emphasis>
00096 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">if</emphasis>&#32;(<link linkend="_class_timer">clazz</link>-&gt;name)
00097 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;{
00098 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.verboseln(<emphasis role="stringliteral">&quot;Register&#32;member&#32;method:&#32;%s&#32;(%d)::%s&quot;</emphasis>,&#32;<link linkend="_class_timer">clazz</link>-&gt;name.c_str(),&#32;<emphasis role="keywordtype">id</emphasis>,&#32;<link linkend="_class_timer">method</link>);
00099 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
00100 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<emphasis role="keywordflow">else</emphasis>
00101 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;{
00102 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;<link linkend="_class_timer">Log</link>.verboseln(<emphasis role="stringliteral">&quot;Register&#32;member&#32;method:&#32;%d::%s&#32;:&#32;invalid&#32;name&quot;</emphasis>,&#32;<emphasis role="keywordtype">id</emphasis>,&#32;<link linkend="_class_timer">method</link>);
00103 &#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;}
00104 <emphasis role="preprocessor">#endif</emphasis>
00105 &#32;&#32;&#32;&#32;}
00106 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">meth</link>;
00107 <emphasis role="preprocessor">#endif</emphasis>
00108 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_class_timer">NULL</link>;
00109 }
</programlisting></section>
<anchor xml:id="_class_bridge_1a7d8858a01005243d2d147cf7d9d558e2"/><section>
    <title>setup()</title>
<indexterm><primary>setup</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>setup</secondary></indexterm>
<para><computeroutput><link linkend="_class_timer">short</link> Bridge::setup ( )<computeroutput>[virtual]</computeroutput></computeroutput></para><para>

<para>Virtual function to set up the component. </para>
</para>

<para><formalpara><title>Returns</title>

<para>The error code indicating the success or failure of the operation. </para>
</formalpara>
</para>
<para>
Reimplemented from <link linkend="_class_component_1a7a6699a2366b7f67b0efa76cc4821088">Component</link>.</para>
<para>
Definition at line <link linkend="__bridge_8cpp_source_1l00022">22</link> of file <link linkend="__bridge_8cpp_source">Bridge.cpp</link>.</para>
<programlisting linenumbering="unnumbered">00023 {
00024 &#32;&#32;&#32;&#32;<link linkend="__bridge_8cpp_1a638e973747e679afac700e213f032505">componentList</link>.setStorage(<link linkend="__app_8cpp_1a237aabeb9c355ed022bf2b76d63c11a8">componentsArray</link>);
00025 &#32;&#32;&#32;&#32;<emphasis role="keywordflow">return</emphasis>&#32;<link linkend="_firmware__v2__cm_2enums_8h_1a1e7cc741c56207a8872ea58373276925">E_OK</link>;
00026 }
</programlisting></section>
</section>
<section>
<title>Member Data Documentation</title>
<anchor xml:id="_class_bridge_1a0e8de61f081eb9d36da2566925e5861d"/><section>
    <title>METHOD_DELIMITER</title>
<indexterm><primary>METHOD_DELIMITER</primary><secondary>Bridge</secondary></indexterm>
<indexterm><primary>Bridge</primary><secondary>METHOD_DELIMITER</secondary></indexterm>
<para><computeroutput><link linkend="_class_timer">constexpr</link> <link linkend="_class_timer">char</link>* Bridge::METHOD_DELIMITER = <link linkend="_macros_8h_1a17c46249a379fcc3db1131c6b7d95de6">C_STR</link>(&quot;:&quot;)<computeroutput>[static]</computeroutput>, <computeroutput>[constexpr]</computeroutput></computeroutput></para><para>
Definition at line <link linkend="__bridge_8h_source_1l00046">46</link> of file <link linkend="__bridge_8h_source">Bridge.h</link>.</para>
</section>
<para>
The documentation for this class was generated from the following files:</para>
<link linkend="__bridge_8h">Bridge.h</link><link linkend="__bridge_8cpp">Bridge.cpp</link></section>
</section>
