classhueplusplus_1_1_searchable_resource_list.html
35.5 KB
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
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>hueplusplus: hueplusplus::SearchableResourceList< Resource > 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>
<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">hueplusplus
 <span id="projectnumber">1.0.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacehueplusplus.html">hueplusplus</a></li><li class="navelem"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pro-methods">Protected Member Functions</a> |
<a href="classhueplusplus_1_1_searchable_resource_list-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">hueplusplus::SearchableResourceList< Resource > Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Handles a <a class="el" href="classhueplusplus_1_1_resource_list.html" title="Handles a list of a certain API resource. ">ResourceList</a> of physical devices which can be searched for.
<a href="classhueplusplus_1_1_searchable_resource_list.html#details">More...</a></p>
<p><code>#include <<a class="el" href="_resource_list_8h_source.html">hueplusplus/ResourceList.h</a>></code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for hueplusplus::SearchableResourceList< Resource >:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classhueplusplus_1_1_searchable_resource_list__inherit__graph.png" border="0" usemap="#hueplusplus_1_1_searchable_resource_list_3_01_resource_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="hueplusplus_1_1_searchable_resource_list_3_01_resource_01_4_inherit__map" id="hueplusplus_1_1_searchable_resource_list_3_01_resource_01_4_inherit__map">
<area shape="rect" id="node2" href="classhueplusplus_1_1_resource_list.html" title="hueplusplus::ResourceList\l\< Resource, int \>" alt="" coords="29,5,220,47"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> Collaboration diagram for hueplusplus::SearchableResourceList< Resource >:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classhueplusplus_1_1_searchable_resource_list__coll__graph.png" border="0" usemap="#hueplusplus_1_1_searchable_resource_list_3_01_resource_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="hueplusplus_1_1_searchable_resource_list_3_01_resource_01_4_coll__map" id="hueplusplus_1_1_searchable_resource_list_3_01_resource_01_4_coll__map">
<area shape="rect" id="node2" href="classhueplusplus_1_1_resource_list.html" title="hueplusplus::ResourceList\l\< Resource, int \>" alt="" coords="29,5,220,47"/>
</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:aa67cf6cc3bde30b1c8a79d98d270ae32"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html#aa67cf6cc3bde30b1c8a79d98d270ae32">search</a> (const std::vector< std::string > &deviceIds={})</td></tr>
<tr class="memdesc:aa67cf6cc3bde30b1c8a79d98d270ae32"><td class="mdescLeft"> </td><td class="mdescRight">Start search for new devices. <a href="#aa67cf6cc3bde30b1c8a79d98d270ae32">More...</a><br /></td></tr>
<tr class="separator:aa67cf6cc3bde30b1c8a79d98d270ae32"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a07bc6249721ec996a38091ee7c46ef3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhueplusplus_1_1_new_device_list.html">NewDeviceList</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html#a07bc6249721ec996a38091ee7c46ef3d">getNewDevices</a> () const</td></tr>
<tr class="memdesc:a07bc6249721ec996a38091ee7c46ef3d"><td class="mdescLeft"> </td><td class="mdescRight">Get devices found in last search. <a href="#a07bc6249721ec996a38091ee7c46ef3d">More...</a><br /></td></tr>
<tr class="separator:a07bc6249721ec996a38091ee7c46ef3d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_classhueplusplus_1_1_resource_list"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classhueplusplus_1_1_resource_list')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classhueplusplus_1_1_resource_list.html">hueplusplus::ResourceList< Resource, int ></a></td></tr>
<tr class="memitem:a92d644c4440523ba31d36da291ce499a inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a92d644c4440523ba31d36da291ce499a">ResourceList</a> (std::shared_ptr< <a class="el" href="classhueplusplus_1_1_a_p_i_cache.html">APICache</a> > baseCache, const std::string &cacheEntry, std::chrono::steady_clock::duration refreshDuration, bool <a class="el" href="classhueplusplus_1_1_resource_list.html#abc08e43ff0bd00145331db6a39fd1708">sharedState</a>=false, const std::function< Resource(<a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a>, const nlohmann::json &, const std::shared_ptr< <a class="el" href="classhueplusplus_1_1_a_p_i_cache.html">APICache</a> > &)> &<a class="el" href="classhueplusplus_1_1_resource_list.html#ac5777102379d55049380d777e779f56f">factory</a>=nullptr)</td></tr>
<tr class="memdesc:a92d644c4440523ba31d36da291ce499a inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Construct ResourceList using a base cache and optional factory function. <a href="classhueplusplus_1_1_resource_list.html#a92d644c4440523ba31d36da291ce499a">More...</a><br /></td></tr>
<tr class="separator:a92d644c4440523ba31d36da291ce499a inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3ad0fc473c4b3ac35210da9f2909e034 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a3ad0fc473c4b3ac35210da9f2909e034">ResourceList</a> (const <a class="el" href="classhueplusplus_1_1_hue_command_a_p_i.html">HueCommandAPI</a> &commands, const std::string &<a class="el" href="classhueplusplus_1_1_resource_list.html#ac3490f9e6b165f3a71c13337887a1a88">path</a>, std::chrono::steady_clock::duration refreshDuration, const std::function< Resource(<a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a>, const nlohmann::json &, const std::shared_ptr< <a class="el" href="classhueplusplus_1_1_a_p_i_cache.html">APICache</a> > &)> &<a class="el" href="classhueplusplus_1_1_resource_list.html#ac5777102379d55049380d777e779f56f">factory</a>=nullptr)</td></tr>
<tr class="memdesc:a3ad0fc473c4b3ac35210da9f2909e034 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Construct ResourceList with a separate cache and optional factory function. <a href="classhueplusplus_1_1_resource_list.html#a3ad0fc473c4b3ac35210da9f2909e034">More...</a><br /></td></tr>
<tr class="separator:a3ad0fc473c4b3ac35210da9f2909e034 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a165b892a0100a4ec6b575a2076f6bb8d inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a165b892a0100a4ec6b575a2076f6bb8d">ResourceList</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html">ResourceList</a> &)=delete</td></tr>
<tr class="memdesc:a165b892a0100a4ec6b575a2076f6bb8d inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Deleted copy constructor. <a href="classhueplusplus_1_1_resource_list.html#a165b892a0100a4ec6b575a2076f6bb8d">More...</a><br /></td></tr>
<tr class="separator:a165b892a0100a4ec6b575a2076f6bb8d inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa75121b18d67faf84ff6b894d0c45b0b inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhueplusplus_1_1_resource_list.html">ResourceList</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#aa75121b18d67faf84ff6b894d0c45b0b">operator=</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html">ResourceList</a> &)=delete</td></tr>
<tr class="memdesc:aa75121b18d67faf84ff6b894d0c45b0b inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Deleted copy assignment. <a href="classhueplusplus_1_1_resource_list.html#aa75121b18d67faf84ff6b894d0c45b0b">More...</a><br /></td></tr>
<tr class="separator:aa75121b18d67faf84ff6b894d0c45b0b inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a6fe81cf76931d2bcf9dda56ea63524bd inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a6fe81cf76931d2bcf9dda56ea63524bd">refresh</a> ()</td></tr>
<tr class="memdesc:a6fe81cf76931d2bcf9dda56ea63524bd inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Refreshes internal state now. <a href="classhueplusplus_1_1_resource_list.html#a6fe81cf76931d2bcf9dda56ea63524bd">More...</a><br /></td></tr>
<tr class="separator:a6fe81cf76931d2bcf9dda56ea63524bd inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa165e446439defcae7d1bf05b4576739 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#aa165e446439defcae7d1bf05b4576739">setRefreshDuration</a> (std::chrono::steady_clock::duration refreshDuration)</td></tr>
<tr class="memdesc:aa165e446439defcae7d1bf05b4576739 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Sets custom refresh interval for this list and all resources created. <a href="classhueplusplus_1_1_resource_list.html#aa165e446439defcae7d1bf05b4576739">More...</a><br /></td></tr>
<tr class="separator:aa165e446439defcae7d1bf05b4576739 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ad7b3bef47b0c09764377cbad327545df inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">std::vector< Resource > </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ad7b3bef47b0c09764377cbad327545df">getAll</a> ()</td></tr>
<tr class="memdesc:ad7b3bef47b0c09764377cbad327545df inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Get all resources that exist. <a href="classhueplusplus_1_1_resource_list.html#ad7b3bef47b0c09764377cbad327545df">More...</a><br /></td></tr>
<tr class="separator:ad7b3bef47b0c09764377cbad327545df inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7bcf2ed48e70e9f11a4b6bdc24e0e611 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">Resource </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a7bcf2ed48e70e9f11a4b6bdc24e0e611">get</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> &id)</td></tr>
<tr class="memdesc:a7bcf2ed48e70e9f11a4b6bdc24e0e611 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Get resource specified by id. <a href="classhueplusplus_1_1_resource_list.html#a7bcf2ed48e70e9f11a4b6bdc24e0e611">More...</a><br /></td></tr>
<tr class="separator:a7bcf2ed48e70e9f11a4b6bdc24e0e611 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:af5e884eefde0a45d53f029a9f30a6ab7 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#af5e884eefde0a45d53f029a9f30a6ab7">exists</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> &id)</td></tr>
<tr class="memdesc:af5e884eefde0a45d53f029a9f30a6ab7 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Checks whether resource with id exists. <a href="classhueplusplus_1_1_resource_list.html#af5e884eefde0a45d53f029a9f30a6ab7">More...</a><br /></td></tr>
<tr class="separator:af5e884eefde0a45d53f029a9f30a6ab7 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a8c0219d853d551394020b7b482518070 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a8c0219d853d551394020b7b482518070">exists</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> &id) const</td></tr>
<tr class="memdesc:a8c0219d853d551394020b7b482518070 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Checks whether resource with id exists. <a href="classhueplusplus_1_1_resource_list.html#a8c0219d853d551394020b7b482518070">More...</a><br /></td></tr>
<tr class="separator:a8c0219d853d551394020b7b482518070 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac65ac738c8cf0eaac35634ccffa455f5 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ac65ac738c8cf0eaac35634ccffa455f5">remove</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> &id)</td></tr>
<tr class="memdesc:ac65ac738c8cf0eaac35634ccffa455f5 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Removes the resource. <a href="classhueplusplus_1_1_resource_list.html#ac65ac738c8cf0eaac35634ccffa455f5">More...</a><br /></td></tr>
<tr class="separator:ac65ac738c8cf0eaac35634ccffa455f5 inherit pub_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ab4a2bfed71c55e91dbead4d4e17d50f7"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html#ab4a2bfed71c55e91dbead4d4e17d50f7">SearchableResourceList</a> (<a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a> &&)=default</td></tr>
<tr class="memdesc:ab4a2bfed71c55e91dbead4d4e17d50f7"><td class="mdescLeft"> </td><td class="mdescRight">Protected defaulted move constructor. <a href="#ab4a2bfed71c55e91dbead4d4e17d50f7">More...</a><br /></td></tr>
<tr class="separator:ab4a2bfed71c55e91dbead4d4e17d50f7"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a525df9955f4395c75def137bb55622d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html#a525df9955f4395c75def137bb55622d1">operator=</a> (<a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a> &&)=default</td></tr>
<tr class="memdesc:a525df9955f4395c75def137bb55622d1"><td class="mdescLeft"> </td><td class="mdescRight">Protected defaulted move assignment. <a href="#a525df9955f4395c75def137bb55622d1">More...</a><br /></td></tr>
<tr class="separator:a525df9955f4395c75def137bb55622d1"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_methods_classhueplusplus_1_1_resource_list"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classhueplusplus_1_1_resource_list')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classhueplusplus_1_1_resource_list.html">hueplusplus::ResourceList< Resource, int ></a></td></tr>
<tr class="memitem:a035501423175d4dc5d91b677de1a9c95 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a035501423175d4dc5d91b677de1a9c95">ResourceList</a> (<a class="el" href="classhueplusplus_1_1_resource_list.html">ResourceList</a> &&)=default</td></tr>
<tr class="memdesc:a035501423175d4dc5d91b677de1a9c95 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Protected defaulted move constructor. <a href="classhueplusplus_1_1_resource_list.html#a035501423175d4dc5d91b677de1a9c95">More...</a><br /></td></tr>
<tr class="separator:a035501423175d4dc5d91b677de1a9c95 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abd327e8fb74cc60ac100bc750af338a3 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classhueplusplus_1_1_resource_list.html">ResourceList</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#abd327e8fb74cc60ac100bc750af338a3">operator=</a> (<a class="el" href="classhueplusplus_1_1_resource_list.html">ResourceList</a> &&)=default</td></tr>
<tr class="memdesc:abd327e8fb74cc60ac100bc750af338a3 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Protected defaulted move assignment. <a href="classhueplusplus_1_1_resource_list.html#abd327e8fb74cc60ac100bc750af338a3">More...</a><br /></td></tr>
<tr class="separator:abd327e8fb74cc60ac100bc750af338a3 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab98434ae91b0868dcf9cb95dfa168c95 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">Resource </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ab98434ae91b0868dcf9cb95dfa168c95">construct</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> &id, const nlohmann::json &state)</td></tr>
<tr class="memdesc:ab98434ae91b0868dcf9cb95dfa168c95 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Constructs resource using factory or constructor, if available. <a href="classhueplusplus_1_1_resource_list.html#ab98434ae91b0868dcf9cb95dfa168c95">More...</a><br /></td></tr>
<tr class="separator:ab98434ae91b0868dcf9cb95dfa168c95 inherit pro_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </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_classhueplusplus_1_1_resource_list"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classhueplusplus_1_1_resource_list')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classhueplusplus_1_1_resource_list.html">hueplusplus::ResourceList< Resource, int ></a></td></tr>
<tr class="memitem:a177194d18e9f0f37228a262d6dd6a73c inherit pub_types_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#a177194d18e9f0f37228a262d6dd6a73c">ResourceType</a> = Resource</td></tr>
<tr class="separator:a177194d18e9f0f37228a262d6dd6a73c inherit pub_types_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab122d90e1fcfde172b21670c74b33f89 inherit pub_types_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> = int</td></tr>
<tr class="separator:ab122d90e1fcfde172b21670c74b33f89 inherit pub_types_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_static_methods_classhueplusplus_1_1_resource_list"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classhueplusplus_1_1_resource_list')"><img src="closed.png" alt="-"/> Static Protected Member Functions inherited from <a class="el" href="classhueplusplus_1_1_resource_list.html">hueplusplus::ResourceList< Resource, int ></a></td></tr>
<tr class="memitem:ab98e351ff57e1674cc5aa25f150a4471 inherit pro_static_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ab98e351ff57e1674cc5aa25f150a4471">maybeStoi</a> (const std::string &key)</td></tr>
<tr class="memdesc:ab98e351ff57e1674cc5aa25f150a4471 inherit pro_static_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Calls std::stoi if IdType is int. <a href="classhueplusplus_1_1_resource_list.html#ab98e351ff57e1674cc5aa25f150a4471">More...</a><br /></td></tr>
<tr class="separator:ab98e351ff57e1674cc5aa25f150a4471 inherit pro_static_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae26bacb486e03c961d992da82d63fdd6 inherit pro_static_methods_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ae26bacb486e03c961d992da82d63fdd6">maybeToString</a> (const <a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a> &id)</td></tr>
<tr class="memdesc:ae26bacb486e03c961d992da82d63fdd6 inherit pro_static_methods_classhueplusplus_1_1_resource_list"><td class="mdescLeft"> </td><td class="mdescRight">Calls std::to_string if IdType is int. <a href="classhueplusplus_1_1_resource_list.html#ae26bacb486e03c961d992da82d63fdd6">More...</a><br /></td></tr>
<tr class="separator:ae26bacb486e03c961d992da82d63fdd6 inherit pro_static_methods_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_attribs_classhueplusplus_1_1_resource_list"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classhueplusplus_1_1_resource_list')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="classhueplusplus_1_1_resource_list.html">hueplusplus::ResourceList< Resource, int ></a></td></tr>
<tr class="memitem:abc77b3be3e5e8da4c7b6cfe86637f048 inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">std::shared_ptr< <a class="el" href="classhueplusplus_1_1_a_p_i_cache.html">APICache</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#abc77b3be3e5e8da4c7b6cfe86637f048">stateCache</a></td></tr>
<tr class="separator:abc77b3be3e5e8da4c7b6cfe86637f048 inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac5777102379d55049380d777e779f56f inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">std::function< Resource(<a class="el" href="classhueplusplus_1_1_resource_list.html#ab122d90e1fcfde172b21670c74b33f89">IdType</a>, const nlohmann::json &, const std::shared_ptr< <a class="el" href="classhueplusplus_1_1_a_p_i_cache.html">APICache</a> > &)> </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ac5777102379d55049380d777e779f56f">factory</a></td></tr>
<tr class="separator:ac5777102379d55049380d777e779f56f inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac3490f9e6b165f3a71c13337887a1a88 inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#ac3490f9e6b165f3a71c13337887a1a88">path</a></td></tr>
<tr class="separator:ac3490f9e6b165f3a71c13337887a1a88 inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abc08e43ff0bd00145331db6a39fd1708 inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classhueplusplus_1_1_resource_list.html#abc08e43ff0bd00145331db6a39fd1708">sharedState</a></td></tr>
<tr class="separator:abc08e43ff0bd00145331db6a39fd1708 inherit pro_attribs_classhueplusplus_1_1_resource_list"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template<typename Resource><br />
class hueplusplus::SearchableResourceList< Resource ></h3>
<p>Handles a <a class="el" href="classhueplusplus_1_1_resource_list.html" title="Handles a list of a certain API resource. ">ResourceList</a> of physical devices which can be searched for. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Resource</td><td>Resource type that is in the list </td></tr>
</table>
</dd>
</dl>
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
<a id="ab4a2bfed71c55e91dbead4d4e17d50f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4a2bfed71c55e91dbead4d4e17d50f7">◆ </a></span>SearchableResourceList()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename Resource> </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">hueplusplus::SearchableResourceList</a>< Resource >::<a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a>< Resource > && </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Protected defaulted move constructor. </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a07bc6249721ec996a38091ee7c46ef3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07bc6249721ec996a38091ee7c46ef3d">◆ </a></span>getNewDevices()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename Resource> </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classhueplusplus_1_1_new_device_list.html">NewDeviceList</a> <a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">hueplusplus::SearchableResourceList</a>< Resource >::getNewDevices </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get devices found in last search. </p>
</div>
</div>
<a id="a525df9955f4395c75def137bb55622d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a525df9955f4395c75def137bb55622d1">◆ </a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename Resource> </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a>& <a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">hueplusplus::SearchableResourceList</a>< Resource >::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">SearchableResourceList</a>< Resource > && </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Protected defaulted move assignment. </p>
</div>
</div>
<a id="aa67cf6cc3bde30b1c8a79d98d270ae32"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa67cf6cc3bde30b1c8a79d98d270ae32">◆ </a></span>search()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename Resource> </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classhueplusplus_1_1_searchable_resource_list.html">hueplusplus::SearchableResourceList</a>< Resource >::search </td>
<td>(</td>
<td class="paramtype">const std::vector< std::string > & </td>
<td class="paramname"><em>deviceIds</em> = <code>{}</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Start search for new devices. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deviceIds</td><td>Serial numbers of the devices to search for (max. 10)</td></tr>
</table>
</dd>
</dl>
<p>Takes more than 40s. If many devices were found a second search command might be necessary. </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/hueplusplus/<a class="el" href="_resource_list_8h_source.html">ResourceList.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.13
</small></address>
</body>
</html>