in tools/cubeb-test.cpp [349:366]
bool cubeb_client::register_device_collection_changed(
cubeb_device_type devtype) const {
cubeb_device_collection_changed_callback callback = nullptr;
if (devtype == static_cast<cubeb_device_type>(CUBEB_DEVICE_TYPE_INPUT |
CUBEB_DEVICE_TYPE_OUTPUT)) {
callback = io_device_changed_callback_s;
} else if (devtype & CUBEB_DEVICE_TYPE_OUTPUT) {
callback = output_device_changed_callback_s;
} else if (devtype & CUBEB_DEVICE_TYPE_INPUT) {
callback = input_device_changed_callback_s;
}
int r = cubeb_register_device_collection_changed(
context, devtype, callback, nullptr);
if (r != CUBEB_OK) {
return false;
}
return true;
}