summaryrefslogtreecommitdiff
path: root/0.14/classAmbPlugin.html
blob: 51e15fa68128708cc2ddb9875b3e123a24083759 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>automotive-message-broker: AmbPlugin&lt; T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">automotive-message-broker
   &#160;<span id="projectnumber">0.14.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classAmbPlugin-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">AmbPlugin&lt; T &gt; Class Template Reference<div class="ingroups"><a class="el" href="group__libamb.html">Libamb</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="ambplugin_8h_source.html">ambplugin.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for AmbPlugin&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classAmbPlugin__inherit__graph.png" border="0" usemap="#AmbPlugin_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="AmbPlugin_3_01T_01_4_inherit__map" id="AmbPlugin_3_01T_01_4_inherit__map">
<area shape="rect" id="node2" href="classAbstractSource.html" title="AbstractSource" alt="" coords="8,80,120,107"/>
<area shape="rect" id="node3" href="classAbstractSink.html" title="AbstractSink" alt="" coords="15,5,113,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for AmbPlugin&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classAmbPlugin__coll__graph.png" border="0" usemap="#AmbPlugin_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="AmbPlugin_3_01T_01_4_coll__map" id="AmbPlugin_3_01T_01_4_coll__map">
<area shape="rect" id="node2" href="classAbstractSource.html" title="AbstractSource" alt="" coords="25,171,137,197"/>
<area shape="rect" id="node3" href="classAbstractSink.html" title="AbstractSink" alt="" coords="143,95,240,121"/>
<area shape="rect" id="node4" href="classAbstractRoutingEngine.html" title="AbstractRoutingEngine" alt="" coords="5,5,161,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:gaeba07a0735880a7a49644f7413a03db5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#gaeba07a0735880a7a49644f7413a03db5">AmbPlugin</a> (<a class="el" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a> *re, const std::map&lt; std::string, std::string &gt; &amp;config)</td></tr>
<tr class="separator:gaeba07a0735880a7a49644f7413a03db5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d965dd88d158b4af1f609317b674098"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga6d965dd88d158b4af1f609317b674098">getPropertyAsync</a> (<a class="el" href="classAsyncPropertyReply.html">AsyncPropertyReply</a> *reply)</td></tr>
<tr class="memdesc:ga6d965dd88d158b4af1f609317b674098"><td class="mdescLeft">&#160;</td><td class="mdescRight">getPropertyAsync is called when a sink requests the value for given property. This is only called if the source supports the Get operation.  <a href="group__libamb.html#ga6d965dd88d158b4af1f609317b674098">More...</a><br /></td></tr>
<tr class="separator:ga6d965dd88d158b4af1f609317b674098"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab052ed4dea097b25aa9aec76f151175f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#gab052ed4dea097b25aa9aec76f151175f">getRangePropertyAsync</a> (<a class="el" href="classAsyncRangePropertyReply.html">AsyncRangePropertyReply</a> *reply)</td></tr>
<tr class="memdesc:gab052ed4dea097b25aa9aec76f151175f"><td class="mdescLeft">&#160;</td><td class="mdescRight">getRangePropertyAsync is called when a sink requests a series of values for a given property within a specified time or sequencial range. This will only be called if the source support the Ranged Operation.  <a href="group__libamb.html#gab052ed4dea097b25aa9aec76f151175f">More...</a><br /></td></tr>
<tr class="separator:gab052ed4dea097b25aa9aec76f151175f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9348b743e7f678c4b98b9681199844ad"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classAsyncPropertyReply.html">AsyncPropertyReply</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga9348b743e7f678c4b98b9681199844ad">setProperty</a> (<a class="el" href="classAsyncSetPropertyRequest.html">AsyncSetPropertyRequest</a> request)</td></tr>
<tr class="memdesc:ga9348b743e7f678c4b98b9681199844ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">setProperty is called when a sink requests to set a value for a given property. This is only called if the source supports the Set Operation.  <a href="group__libamb.html#ga9348b743e7f678c4b98b9681199844ad">More...</a><br /></td></tr>
<tr class="separator:ga9348b743e7f678c4b98b9681199844ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab98182f95801527bec4d972f37d3c92b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#gab98182f95801527bec4d972f37d3c92b">subscribeToPropertyChanges</a> (VehicleProperty::Property property)</td></tr>
<tr class="memdesc:gab98182f95801527bec4d972f37d3c92b"><td class="mdescLeft">&#160;</td><td class="mdescRight">subscribeToPropertyChanges is called when a sink requests a subscription. Source plugins can keep track of subscriptions and may wish to sleep if there are no subscriptions.  <a href="group__libamb.html#gab98182f95801527bec4d972f37d3c92b">More...</a><br /></td></tr>
<tr class="separator:gab98182f95801527bec4d972f37d3c92b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1ebede30c34aa80c3833db9d744474d0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga1ebede30c34aa80c3833db9d744474d0">unsubscribeToPropertyChanges</a> (VehicleProperty::Property property)</td></tr>
<tr class="memdesc:ga1ebede30c34aa80c3833db9d744474d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">unsubscribeToPropertyChanges is called when a sink requests to unsubscribe from a given property's changes.  <a href="group__libamb.html#ga1ebede30c34aa80c3833db9d744474d0">More...</a><br /></td></tr>
<tr class="separator:ga1ebede30c34aa80c3833db9d744474d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga877185aeb55596f1d4407e9d7add3d06"><td class="memItemLeft" align="right" valign="top">virtual PropertyList&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga877185aeb55596f1d4407e9d7add3d06">supported</a> ()</td></tr>
<tr class="memdesc:ga877185aeb55596f1d4407e9d7add3d06"><td class="mdescLeft">&#160;</td><td class="mdescRight">supported is called by the routingEngine to understand what properties this source supports  <a href="group__libamb.html#ga877185aeb55596f1d4407e9d7add3d06">More...</a><br /></td></tr>
<tr class="separator:ga877185aeb55596f1d4407e9d7add3d06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac06aaf56b38fc404f766b3ff78eafb0e"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#gac06aaf56b38fc404f766b3ff78eafb0e">supportedOperations</a> ()</td></tr>
<tr class="memdesc:gac06aaf56b38fc404f766b3ff78eafb0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">supportedOperations  <a href="group__libamb.html#gac06aaf56b38fc404f766b3ff78eafb0e">More...</a><br /></td></tr>
<tr class="separator:gac06aaf56b38fc404f766b3ff78eafb0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga717b0cdbad39119d5f8ef55750eb280e"><td class="memItemLeft" align="right" valign="top">virtual PropertyInfo&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga717b0cdbad39119d5f8ef55750eb280e">getPropertyInfo</a> (const VehicleProperty::Property &amp;property)</td></tr>
<tr class="memdesc:ga717b0cdbad39119d5f8ef55750eb280e"><td class="mdescLeft">&#160;</td><td class="mdescRight">getPropertyInfo used to return specific information about a property. The source should override this otherwise a PropertyInfo::invalid() will be returned for the property.  <a href="group__libamb.html#ga717b0cdbad39119d5f8ef55750eb280e">More...</a><br /></td></tr>
<tr class="separator:ga717b0cdbad39119d5f8ef55750eb280e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84ad326ad2f861a8b028c0b99940d470"><td class="memItemLeft" align="right" valign="top">virtual const string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga84ad326ad2f861a8b028c0b99940d470">uuid</a> ()</td></tr>
<tr class="separator:ga84ad326ad2f861a8b028c0b99940d470"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf58a77165e10549dc0e30f2d1b0d7b2f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#gaf58a77165e10549dc0e30f2d1b0d7b2f">propertyChanged</a> (<a class="el" href="classAbstractPropertyType.html">AbstractPropertyType</a> *value)</td></tr>
<tr class="separator:gaf58a77165e10549dc0e30f2d1b0d7b2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6a1098c5ae43cd731c7910efd36f6f7e"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#ga6a1098c5ae43cd731c7910efd36f6f7e">supportedChanged</a> (const PropertyList &amp;supportedProperties)</td></tr>
<tr class="separator:ga6a1098c5ae43cd731c7910efd36f6f7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab75521774823cbff2db31a4a624e6256"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libamb.html#gab75521774823cbff2db31a4a624e6256">init</a> ()</td></tr>
<tr class="separator:gab75521774823cbff2db31a4a624e6256"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classAbstractSource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstractSource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstractSource.html">AbstractSource</a></td></tr>
<tr class="memitem:a753c78f3ee4c565c4ba2157c06cb7fbe inherit pub_methods_classAbstractSource"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a753c78f3ee4c565c4ba2157c06cb7fbe"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>AbstractSource</b> (<a class="el" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a> *engine, map&lt; string, string &gt; config)</td></tr>
<tr class="separator:a753c78f3ee4c565c4ba2157c06cb7fbe inherit pub_methods_classAbstractSource"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classAbstractSink"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAbstractSink')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAbstractSink.html">AbstractSink</a></td></tr>
<tr class="memitem:a63f03d63fd091cd6f39a9888dd08ea6a inherit pub_methods_classAbstractSink"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63f03d63fd091cd6f39a9888dd08ea6a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>AbstractSink</b> (<a class="el" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a> *engine, map&lt; string, string &gt; config)</td></tr>
<tr class="separator:a63f03d63fd091cd6f39a9888dd08ea6a inherit pub_methods_classAbstractSink"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classAbstractSource"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classAbstractSource')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classAbstractSource.html">AbstractSource</a></td></tr>
<tr class="memitem:aad1e5e4914f2aa174dfd8fa6e143c1b9 inherit pub_types_classAbstractSource"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad1e5e4914f2aa174dfd8fa6e143c1b9"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractSource.html#aad1e5e4914f2aa174dfd8fa6e143c1b9">Operations</a> { <b>Get</b> = 0x01, 
<b>Set</b> = 0x02, 
<b>GetRanged</b> = 0x04
 }<tr class="memdesc:aad1e5e4914f2aa174dfd8fa6e143c1b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">The Operations enum is a bitmask flag used to specify which operations are supported by the source plugin. <br /></td></tr>
</td></tr>
<tr class="separator:aad1e5e4914f2aa174dfd8fa6e143c1b9 inherit pub_types_classAbstractSource"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classAbstractSource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstractSource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstractSource.html">AbstractSource</a></td></tr>
<tr class="memitem:aabbce93fea123c54be55a007c928a6f1 inherit pro_attribs_classAbstractSource"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractSource.html#aabbce93fea123c54be55a007c928a6f1">routingEngine</a></td></tr>
<tr class="memdesc:aabbce93fea123c54be55a007c928a6f1 inherit pro_attribs_classAbstractSource"><td class="mdescLeft">&#160;</td><td class="mdescRight">routingEngine the core routing engine used to send property updates to sink plugins.  <a href="#aabbce93fea123c54be55a007c928a6f1">More...</a><br /></td></tr>
<tr class="separator:aabbce93fea123c54be55a007c928a6f1 inherit pro_attribs_classAbstractSource"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classAbstractSink"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classAbstractSink')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classAbstractSink.html">AbstractSink</a></td></tr>
<tr class="memitem:a4d49a722e60cd9993c182a29fbf74591 inherit pro_attribs_classAbstractSink"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4d49a722e60cd9993c182a29fbf74591"></a>
<a class="el" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractSink.html#a4d49a722e60cd9993c182a29fbf74591">routingEngine</a></td></tr>
<tr class="memdesc:a4d49a722e60cd9993c182a29fbf74591 inherit pro_attribs_classAbstractSink"><td class="mdescLeft">&#160;</td><td class="mdescRight">routingEngine is the core of AMB. It is used to pass plugin and property information to other plugins <br /></td></tr>
<tr class="separator:a4d49a722e60cd9993c182a29fbf74591 inherit pro_attribs_classAbstractSink"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52581d514cad8b74a9fb42a026522f76 inherit pro_attribs_classAbstractSink"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52581d514cad8b74a9fb42a026522f76"></a>
map&lt; string, string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>configuration</b></td></tr>
<tr class="separator:a52581d514cad8b74a9fb42a026522f76 inherit pro_attribs_classAbstractSink"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class T&gt;<br />
class AmbPlugin&lt; T &gt;</h3>

<p><a class="el" href="classAmbPlugin.html">AmbPlugin</a> class contains common code used in plugins for Automotive message broker(AMB). For the AMB library API please visit <a class="el" href="libamb_8h.html#libamb">Automotive Message Broker Library Documentation</a>.</p>
<p>Example of the minimal code to write a new plugin using <a class="el" href="classAmbPlugin.html">AmbPlugin</a>:</p>
<div class="fragment"><div class="line"><span class="preprocessor">#include &quot;ambpluginimpl.h&quot;</span></div><div class="line"></div><div class="line"><span class="keyword">class </span>MyPlugin: <span class="keyword">public</span> <a class="code" href="classAmbPluginImpl.html">AmbPluginImpl</a> {</div><div class="line"></div><div class="line"><span class="keyword">public</span>:</div><div class="line">    MyPlugin(<a class="code" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a>* re, <span class="keyword">const</span> std::map&lt;std::string, std::string&gt;&amp; config, <a class="code" href="classAbstractSource.html">AbstractSource</a>&amp; parent);</div><div class="line">    ~MyPlugin();</div><div class="line"></div><div class="line">    <span class="keyword">const</span> std::string <a class="code" href="group__libamb.html#ga84ad326ad2f861a8b028c0b99940d470">uuid</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="stringliteral">&quot;plugin_uuid&quot;</span>; }</div><div class="line">};</div><div class="line"></div><div class="line"><span class="comment">// library exported function for plugin loader</span></div><div class="line"><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> <span class="keywordtype">void</span> create(<a class="code" href="classAbstractRoutingEngine.html">AbstractRoutingEngine</a>* routingengine, std::map&lt;std::string, std::string&gt; config)</div><div class="line">{</div><div class="line">    <span class="keyword">new</span> <a class="code" href="classAmbPlugin.html">AmbPlugin&lt;MyPlugin&gt;</a>(routingengine, config);</div><div class="line">}</div></div><!-- fragment --> </div><hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/kev/src/automotive-message-broker/lib/<a class="el" href="ambplugin_8h_source.html">ambplugin.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>