diff options
Diffstat (limited to '0.14/classAbstractRoutingEngine.html')
-rw-r--r-- | 0.14/classAbstractRoutingEngine.html | 483 |
1 files changed, 483 insertions, 0 deletions
diff --git a/0.14/classAbstractRoutingEngine.html b/0.14/classAbstractRoutingEngine.html new file mode 100644 index 00000000..6475a0fe --- /dev/null +++ b/0.14/classAbstractRoutingEngine.html @@ -0,0 +1,483 @@ +<!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: AbstractRoutingEngine Class 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 +  <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 Page</span></a></li> + <li><a href="pages.html"><span>Related 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 List</span></a></li> + <li><a href="classes.html"><span>Class Index</span></a></li> + <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> + <li><a href="functions.html"><span>Class 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-types">Public Types</a> | +<a href="#pub-methods">Public Member Functions</a> | +<a href="#pro-attribs">Protected Attributes</a> | +<a href="classAbstractRoutingEngine-members.html">List of all members</a> </div> + <div class="headertitle"> +<div class="title">AbstractRoutingEngine Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div> +</div><!--header--> +<div class="contents"> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a> +Public Types</h2></td></tr> +<tr class="memitem:aea584dbb4853b86a3020783bfe9e0608"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea584dbb4853b86a3020783bfe9e0608"></a> +typedef std::function< void(<a class="el" href="classAbstractPropertyType.html">AbstractPropertyType</a> *value)> </td><td class="memItemRight" valign="bottom"><b>PropertyChangedType</b></td></tr> +<tr class="separator:aea584dbb4853b86a3020783bfe9e0608"><td class="memSeparator" colspan="2"> </td></tr> +</table><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:a60ef59d81671e74ecc1ba3e926157a7f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a60ef59d81671e74ecc1ba3e926157a7f"></a> + </td><td class="memItemRight" valign="bottom"><b>AbstractRoutingEngine</b> (std::map< std::string, std::string > configuration)</td></tr> +<tr class="separator:a60ef59d81671e74ecc1ba3e926157a7f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad88ea00def2bb5991f5b2b424acab6c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad88ea00def2bb5991f5b2b424acab6c8"></a> +virtual void </td><td class="memItemRight" valign="bottom"><b>registerSource</b> (<a class="el" href="classAbstractSource.html">AbstractSource</a> *src)=0</td></tr> +<tr class="separator:ad88ea00def2bb5991f5b2b424acab6c8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a177588ad6d45f477f596eb025dcc8bed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a177588ad6d45f477f596eb025dcc8bed"></a> +virtual void </td><td class="memItemRight" valign="bottom"><b>updateSupported</b> (PropertyList added, PropertyList removed, <a class="el" href="classAbstractSource.html">AbstractSource</a> *source)=0</td></tr> +<tr class="separator:a177588ad6d45f477f596eb025dcc8bed"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adadf5f60f3895bdb90bb224d05ee97f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adadf5f60f3895bdb90bb224d05ee97f0"></a> +void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#adadf5f60f3895bdb90bb224d05ee97f0">updateProperty</a> (VehicleProperty::Property property, <a class="el" href="classAbstractPropertyType.html">AbstractPropertyType</a> *value, std::string uuid)</td></tr> +<tr class="memdesc:adadf5f60f3895bdb90bb224d05ee97f0"><td class="mdescLeft"> </td><td class="mdescRight">Deprecated: <br /></td></tr> +<tr class="separator:adadf5f60f3895bdb90bb224d05ee97f0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a2395e520ddfd532959706a5122998fbb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2395e520ddfd532959706a5122998fbb"></a> +virtual void </td><td class="memItemRight" valign="bottom"><b>updateProperty</b> (<a class="el" href="classAbstractPropertyType.html">AbstractPropertyType</a> *value, const std::string &uuid)=0</td></tr> +<tr class="separator:a2395e520ddfd532959706a5122998fbb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:adcd80e2e3823af7101c5d1f7ff0c217c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcd80e2e3823af7101c5d1f7ff0c217c"></a> +virtual PropertyList </td><td class="memItemRight" valign="bottom"><b>supported</b> ()=0</td></tr> +<tr class="separator:adcd80e2e3823af7101c5d1f7ff0c217c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a179052d9ab3f70ddb4c91421f94c45a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a179052d9ab3f70ddb4c91421f94c45a9"></a> +virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#a179052d9ab3f70ddb4c91421f94c45a9">registerSink</a> (<a class="el" href="classAbstractSink.html">AbstractSink</a> *self)=0</td></tr> +<tr class="memdesc:a179052d9ab3f70ddb4c91421f94c45a9"><td class="mdescLeft"> </td><td class="mdescRight">sinks: <br /></td></tr> +<tr class="separator:a179052d9ab3f70ddb4c91421f94c45a9"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a0f0a96c938c395565d01e0f78cc3bea8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f0a96c938c395565d01e0f78cc3bea8"></a> +virtual void </td><td class="memItemRight" valign="bottom"><b>unregisterSink</b> (<a class="el" href="classAbstractSink.html">AbstractSink</a> *self)=0</td></tr> +<tr class="separator:a0f0a96c938c395565d01e0f78cc3bea8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aef8ad3a6c8d00d7fe9fdb378acf918c0"><td class="memItemLeft" align="right" valign="top">virtual std::vector< std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#aef8ad3a6c8d00d7fe9fdb378acf918c0">sourcesForProperty</a> (const VehicleProperty::Property &property)=0</td></tr> +<tr class="separator:aef8ad3a6c8d00d7fe9fdb378acf918c0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad1cbda415f674be4a3ce49be05aa8ee8"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classAsyncPropertyReply.html">AsyncPropertyReply</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#ad1cbda415f674be4a3ce49be05aa8ee8">getPropertyAsync</a> (<a class="el" href="classAsyncPropertyRequest.html">AsyncPropertyRequest</a> request)=0</td></tr> +<tr class="separator:ad1cbda415f674be4a3ce49be05aa8ee8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9befec62882b5cbf956b75dc99eedf21"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#a9befec62882b5cbf956b75dc99eedf21">getRangePropertyAsync</a> (<a class="el" href="classAsyncRangePropertyRequest.html">AsyncRangePropertyRequest</a> request)=0</td></tr> +<tr class="memdesc:a9befec62882b5cbf956b75dc99eedf21"><td class="mdescLeft"> </td><td class="mdescRight">getRangePropertyAsync is used for getting a range of properties that are within the specified time or sequence parameters. <a href="#a9befec62882b5cbf956b75dc99eedf21">More...</a><br /></td></tr> +<tr class="separator:a9befec62882b5cbf956b75dc99eedf21"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a740b2c9bd8f842499cf250f660553651"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a740b2c9bd8f842499cf250f660553651"></a> +virtual <a class="el" href="classAsyncPropertyReply.html">AsyncPropertyReply</a> * </td><td class="memItemRight" valign="bottom"><b>setProperty</b> (<a class="el" href="classAsyncSetPropertyRequest.html">AsyncSetPropertyRequest</a> request)=0</td></tr> +<tr class="separator:a740b2c9bd8f842499cf250f660553651"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7a30b4c21f91ce6586e1575458238809"><td class="memItemLeft" align="right" valign="top">virtual uint </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#a7a30b4c21f91ce6586e1575458238809">subscribeToProperty</a> (const VehicleProperty::Property &propertyName, PropertyChangedType callback, std::string pid="")=0</td></tr> +<tr class="memdesc:a7a30b4c21f91ce6586e1575458238809"><td class="mdescLeft"> </td><td class="mdescRight">subscribeToProperty subscribes to propertyName. Value changes will be passed to callback. <a href="#a7a30b4c21f91ce6586e1575458238809">More...</a><br /></td></tr> +<tr class="separator:a7a30b4c21f91ce6586e1575458238809"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa56c145aa682ece99791831bc7c420f7"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#aa56c145aa682ece99791831bc7c420f7">unsubscribeToProperty</a> (uint handle)=0</td></tr> +<tr class="memdesc:aa56c145aa682ece99791831bc7c420f7"><td class="mdescLeft"> </td><td class="mdescRight">unsubscribeToProperty <a href="#aa56c145aa682ece99791831bc7c420f7">More...</a><br /></td></tr> +<tr class="separator:aa56c145aa682ece99791831bc7c420f7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1714228e3ef96be7f5a50811b516c352"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#a1714228e3ef96be7f5a50811b516c352">subscribeToProperty</a> (const VehicleProperty::Property &propertyName, <a class="el" href="classAbstractSink.html">AbstractSink</a> *self)=0</td></tr> +<tr class="memdesc:a1714228e3ef96be7f5a50811b516c352"><td class="mdescLeft"> </td><td class="mdescRight">subscribeToProperty subscribe to changes made to a property value. <a href="#a1714228e3ef96be7f5a50811b516c352">More...</a><br /></td></tr> +<tr class="separator:a1714228e3ef96be7f5a50811b516c352"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aae6c5d27dc01b4773b6bf77331f86e9f"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#aae6c5d27dc01b4773b6bf77331f86e9f">subscribeToProperty</a> (const VehicleProperty::Property &propertyName, const std::string &sourceUuidFilter, <a class="el" href="classAbstractSink.html">AbstractSink</a> *self)=0</td></tr> +<tr class="memdesc:aae6c5d27dc01b4773b6bf77331f86e9f"><td class="mdescLeft"> </td><td class="mdescRight">subscribeToProperty subscribe to changes made to a property value. <a href="#aae6c5d27dc01b4773b6bf77331f86e9f">More...</a><br /></td></tr> +<tr class="separator:aae6c5d27dc01b4773b6bf77331f86e9f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ac64ad6ac6a1fcd6ce7ad190262176466"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classAbstractRoutingEngine.html#ac64ad6ac6a1fcd6ce7ad190262176466">subscribeToProperty</a> (const VehicleProperty::Property &propertyName, const std::string &sourceUuidFilter, Zone::Type zoneFilter, <a class="el" href="classAbstractSink.html">AbstractSink</a> *self)=0</td></tr> +<tr class="memdesc:ac64ad6ac6a1fcd6ce7ad190262176466"><td class="mdescLeft"> </td><td class="mdescRight">subscribeToProperty subscribe to changes made to a property value. <a href="#ac64ad6ac6a1fcd6ce7ad190262176466">More...</a><br /></td></tr> +<tr class="separator:ac64ad6ac6a1fcd6ce7ad190262176466"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a23c16d50214f36e08383cfec64e1f569"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a23c16d50214f36e08383cfec64e1f569"></a> +virtual bool </td><td class="memItemRight" valign="bottom"><b>unsubscribeToProperty</b> (const VehicleProperty::Property &, <a class="el" href="classAbstractSink.html">AbstractSink</a> *self)=0</td></tr> +<tr class="separator:a23c16d50214f36e08383cfec64e1f569"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa54d896b08870c24ae503a347681a439"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa54d896b08870c24ae503a347681a439"></a> +virtual PropertyInfo </td><td class="memItemRight" valign="bottom"><b>getPropertyInfo</b> (const VehicleProperty::Property &, const std::string &sourceUuid)=0</td></tr> +<tr class="separator:aa54d896b08870c24ae503a347681a439"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a> +Protected Attributes</h2></td></tr> +<tr class="memitem:a84ecc2385f6cde8a0971a58ad6f7cd3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84ecc2385f6cde8a0971a58ad6f7cd3f"></a> +std::map< std::string, std::string > </td><td class="memItemRight" valign="bottom"><b>mConfig</b></td></tr> +<tr class="separator:a84ecc2385f6cde8a0971a58ad6f7cd3f"><td class="memSeparator" colspan="2"> </td></tr> +</table> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<div class="textblock"><dl><dt><b>Examples: </b></dt><dd><a class="el" href="_2home_2kev_2src_2automotive-message-broker_2lib_2abstractroutingengine_8h-example.html#_a26">/home/kev/src/automotive-message-broker/lib/abstractroutingengine.h</a>.</dd> +</dl></div><h2 class="groupheader">Member Function Documentation</h2> +<a class="anchor" id="ad1cbda415f674be4a3ce49be05aa8ee8"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual <a class="el" href="classAsyncPropertyReply.html">AsyncPropertyReply</a>* AbstractRoutingEngine::getPropertyAsync </td> + <td>(</td> + <td class="paramtype"><a class="el" href="classAsyncPropertyRequest.html">AsyncPropertyRequest</a> </td> + <td class="paramname"><em>request</em></td><td>)</td> + <td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> +<p>/brief getPropertyAsync requests a property value from a source. This call has a timeout and the callback specified in the request will always be called. /see <a class="el" href="classAsyncPropertyRequest.html" title="The AsyncPropertyRequest class is used by sinks to request property values. ">AsyncPropertyRequest</a> /see <a class="el" href="classAsyncPropertyReply.html" title="The AsyncPropertyReply class is used by sources to reply to Get and Set operations. The source should set success to true if the call is successful or 'false' if the request was not successful and set 'error' to the appropriate error. ">AsyncPropertyReply</a>. /param request requested property. /return <a class="el" href="classAsyncPropertyReply.html" title="The AsyncPropertyReply class is used by sources to reply to Get and Set operations. The source should set success to true if the call is successful or 'false' if the request was not successful and set 'error' to the appropriate error. ">AsyncPropertyReply</a>. The returned <a class="el" href="classAsyncPropertyReply.html" title="The AsyncPropertyReply class is used by sources to reply to Get and Set operations. The source should set success to true if the call is successful or 'false' if the request was not successful and set 'error' to the appropriate error. ">AsyncPropertyReply</a> is owned by the caller of getPropertyAsync. /code <a class="el" href="classAsyncPropertyRequest.html" title="The AsyncPropertyRequest class is used by sinks to request property values. ">AsyncPropertyRequest</a> request; request.property = VehicleProperty::VehicleSpeed request.completed = [](AsyncPropertyReply* reply) { //you own the reply delete reply; }; routingEngine->getPropertyAsync(request); /endcode </p> + +</div> +</div> +<a class="anchor" id="a9befec62882b5cbf956b75dc99eedf21"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual void AbstractRoutingEngine::getRangePropertyAsync </td> + <td>(</td> + <td class="paramtype"><a class="el" href="classAsyncRangePropertyRequest.html">AsyncRangePropertyRequest</a> </td> + <td class="paramname"><em>request</em></td><td>)</td> + <td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>getRangePropertyAsync is used for getting a range of properties that are within the specified time or sequence parameters. </p> +<ul> +<li>request the request containing the property and other information required by the query <dl class="section return"><dt>Returns</dt><dd>a pointer to the reply. <div class="fragment"><div class="line"><a class="code" href="classAsyncRangePropertyRequest.html">AsyncRangePropertyRequest</a> vehicleSpeedFromLastWeek;</div><div class="line"></div><div class="line">vehicleSpeedFromLastWeek.<a class="code" href="classAsyncRangePropertyRequest.html#a2dc2927f6c771707f15a767358a58e69">timeBegin</a> = amb::currentTime() - 10;</div><div class="line">vehicleSpeedFromLastWeek.<a class="code" href="classAsyncRangePropertyRequest.html#acd2a28137c227b0fb6a51576d84f5f30">timeEnd</a> = amb::currentTime();</div><div class="line"></div><div class="line">PropertyList requestList;</div><div class="line">requestList.push_back(VehicleProperty::VehicleSpeed);</div><div class="line">requestList.push_back(<a class="code" href="classVehicleProperty.html#a37806db1ab067a849a4952eaff00a842">VehicleProperty::EngineSpeed</a>);</div><div class="line"></div><div class="line">vehicleSpeedFromLastWeek.<a class="code" href="classAsyncRangePropertyRequest.html#afd6f95a06376fef905faf5ab1b580bc9">properties</a> = requestList;</div><div class="line">vehicleSpeedFromLastWeek.<a class="code" href="classAsyncRangePropertyRequest.html#a81777a8e0304bd6929c05d39c650454d">completed</a> = [](<a class="code" href="classAsyncRangePropertyReply.html">AsyncRangePropertyReply</a>* reply)</div><div class="line">{</div><div class="line"> std::list<AbstractPropertyType*> values = reply->values;</div><div class="line"> <span class="keywordflow">for</span>(<span class="keyword">auto</span> itr = values.begin(); itr != values.end(); itr++)</div><div class="line"> {</div><div class="line"> <span class="keyword">auto</span> val = *itr;</div><div class="line"> <a class="code" href="classDebugOut.html">DebugOut</a>(1)<<<span class="stringliteral">"Value from past: ("</span><<val->name<<<span class="stringliteral">"): "</span><<val->toString()<<<span class="stringliteral">" time: "</span><<val->timestamp<<endl;</div><div class="line"> }</div><div class="line"></div><div class="line"> <span class="keyword">delete</span> reply;</div><div class="line">};</div><div class="line"></div><div class="line">routingEngine->getRangePropertyAsync(vehicleSpeedFromLastWeek);</div></div><!-- fragment --> </dd></dl> +</li> +</ul> + +</div> +</div> +<a class="anchor" id="aef8ad3a6c8d00d7fe9fdb378acf918c0"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual std::vector<std::string> AbstractRoutingEngine::sourcesForProperty </td> + <td>(</td> + <td class="paramtype">const VehicleProperty::Property & </td> + <td class="paramname"><em>property</em></td><td>)</td> + <td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> +<p>/brief sourcesForProperty /param property /return vector of source uuid's that support the "property" </p> + +</div> +</div> +<a class="anchor" id="a7a30b4c21f91ce6586e1575458238809"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual uint AbstractRoutingEngine::subscribeToProperty </td> + <td>(</td> + <td class="paramtype">const VehicleProperty::Property & </td> + <td class="paramname"><em>propertyName</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">PropertyChangedType </td> + <td class="paramname"><em>callback</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">std::string </td> + <td class="paramname"><em>pid</em> = <code>""</code> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>subscribeToProperty subscribes to propertyName. Value changes will be passed to callback. </p> +<ul> +<li>propertyName </li> +<li>callback </li> +<li>pid process id of the requesting application <dl class="section return"><dt>Returns</dt><dd>subscription handle </dd></dl> +</li> +</ul> + +</div> +</div> +<a class="anchor" id="a1714228e3ef96be7f5a50811b516c352"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual bool AbstractRoutingEngine::subscribeToProperty </td> + <td>(</td> + <td class="paramtype">const VehicleProperty::Property & </td> + <td class="paramname"><em>propertyName</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classAbstractSink.html">AbstractSink</a> * </td> + <td class="paramname"><em>self</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>subscribeToProperty subscribe to changes made to a property value. </p> +<ul> +<li>propertyName name of the property to request a subscription for. </li> +<li>self pointer to the sink who is subscribing. <div class="fragment"><div class="line"><span class="comment">//somewhere in the sink:</span></div><div class="line">routingEngine->subscribeToProperty(<a class="code" href="classVehicleProperty.html#a37806db1ab067a849a4952eaff00a842">VehicleProperty::EngineSpeed</a>, <span class="keyword">this</span>);</div><div class="line"></div><div class="line"><span class="comment">//... elsewhere in the sink, this will be called when a property changes:</span></div><div class="line"><span class="keywordtype">void</span> MySink::propertyChanged(<span class="keyword">const</span> <a class="code" href="classAbstractPropertyType.html">AbstractPropertyType</a>* property)</div><div class="line">{</div><div class="line"> <span class="keywordflow">if</span>(property-><a class="code" href="classAbstractPropertyType.html#a0899de35293963a6c18a0f4913916871">name</a> == <a class="code" href="classVehicleProperty.html#a37806db1ab067a849a4952eaff00a842">VehicleProperty::EngineSpeed</a>)</div><div class="line"> {</div><div class="line"> ...</div><div class="line"> }</div><div class="line">}</div></div><!-- fragment --> </li> +</ul> + +</div> +</div> +<a class="anchor" id="aae6c5d27dc01b4773b6bf77331f86e9f"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual bool AbstractRoutingEngine::subscribeToProperty </td> + <td>(</td> + <td class="paramtype">const VehicleProperty::Property & </td> + <td class="paramname"><em>propertyName</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const std::string & </td> + <td class="paramname"><em>sourceUuidFilter</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classAbstractSink.html">AbstractSink</a> * </td> + <td class="paramname"><em>self</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>subscribeToProperty subscribe to changes made to a property value. </p> +<ul> +<li>propertyName name of the property to request a subscription for. </li> +<li>sourceUuidFilter source UUID to filter. Only property updates from this source will be sent to the sink. </li> +<li>self pointer to the sink who is subscribing. </li> +</ul> + +</div> +</div> +<a class="anchor" id="ac64ad6ac6a1fcd6ce7ad190262176466"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual bool AbstractRoutingEngine::subscribeToProperty </td> + <td>(</td> + <td class="paramtype">const VehicleProperty::Property & </td> + <td class="paramname"><em>propertyName</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const std::string & </td> + <td class="paramname"><em>sourceUuidFilter</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">Zone::Type </td> + <td class="paramname"><em>zoneFilter</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classAbstractSink.html">AbstractSink</a> * </td> + <td class="paramname"><em>self</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>subscribeToProperty subscribe to changes made to a property value. </p> +<ul> +<li>propertyName name of the property to request a subscription for. </li> +<li>sourceUuidFilter source UUID to filter. Only property updates from this source will be sent to the sink. </li> +<li>zoneFilter zone to filter. Only updates from this zone will be passed to the sink. </li> +<li>self pointer to the sink who is subscribing. </li> +</ul> + +</div> +</div> +<a class="anchor" id="aa56c145aa682ece99791831bc7c420f7"></a> +<div class="memitem"> +<div class="memproto"> +<table class="mlabels"> + <tr> + <td class="mlabels-left"> + <table class="memname"> + <tr> + <td class="memname">virtual void AbstractRoutingEngine::unsubscribeToProperty </td> + <td>(</td> + <td class="paramtype">uint </td> + <td class="paramname"><em>handle</em></td><td>)</td> + <td></td> + </tr> + </table> + </td> + <td class="mlabels-right"> +<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> + </tr> +</table> +</div><div class="memdoc"> + +<p>unsubscribeToProperty </p> +<ul> +<li>handle </li> +</ul> + +</div> +</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="abstractroutingengine_8h_source.html">abstractroutingengine.h</a></li> +</ul> +</div><!-- contents --> +<!-- start footer part --> +<hr class="footer"/><address class="footer"><small> +Generated by  <a href="http://www.doxygen.org/index.html"> +<img class="footer" src="doxygen.png" alt="doxygen"/> +</a> 1.8.11 +</small></address> +</body> +</html> |