4 #ifndef DEVICE_MANAGER_H_
5 #define DEVICE_MANAGER_H_
11 #include "device_manager_types.h"
16 class DeviceManagerPlatformAdapter;
32 DeviceManager(DeviceManagerPlatformAdapter& device_manager_platform_adapter);
65 std::shared_ptr<DeviceManagerPlatformAdapter> device_manager_platform_adapter_;
66 std::vector<std::reference_wrapper<DeviceAttachedListener>> device_attached_listeners_;
67 std::vector<std::reference_wrapper<DeviceDetachedListener>> device_detached_listeners_;
69 std::mutex device_attached_listeners_mutex_;
70 std::mutex device_detached_listeners_mutex_;
72 void OnPlatformAttached(
const DeviceInfo& device_info);
73 void OnPlatformDetached(
const DeviceInfo& device_info);
77 #endif // DEVICE_MANAGER_H_