sd-device: introduce device_enumerator_get_devices()

This commit is contained in:
Yu Watanabe
2018-09-10 16:47:35 +09:00
parent 0a1665890c
commit 708474c5a0
2 changed files with 12 additions and 0 deletions
@@ -9,6 +9,7 @@ int device_enumerator_add_device(sd_device_enumerator *enumerator, sd_device *de
int device_enumerator_add_match_is_initialized(sd_device_enumerator *enumerator);
sd_device *device_enumerator_get_first(sd_device_enumerator *enumerator);
sd_device *device_enumerator_get_next(sd_device_enumerator *enumerator);
sd_device **device_enumerator_get_devices(sd_device_enumerator *enumerator, size_t *ret_n_devices);
#define FOREACH_DEVICE_AND_SUBSYSTEM(enumerator, device) \
for (device = device_enumerator_get_first(enumerator); \
@@ -973,3 +973,14 @@ sd_device *device_enumerator_get_next(sd_device_enumerator *enumerator) {
return enumerator->devices[++enumerator->current_device_index];
}
sd_device **device_enumerator_get_devices(sd_device_enumerator *enumerator, size_t *ret_n_devices) {
assert(enumerator);
assert(ret_n_devices);
if (!enumerator->scan_uptodate)
return NULL;
*ret_n_devices = enumerator->n_devices;
return enumerator->devices;
}