Rework network client callback pipeline - route callbacks from clients through ResourceManager so that device list callbacks get called. Fixes remote devices not showing up in plugins.

This commit is contained in:
Adam Honse 2021-05-14 23:28:55 -05:00
parent 94370c24a8
commit d88f9979a9
8 changed files with 81 additions and 56 deletions

View file

@ -76,7 +76,7 @@ public:
virtual ProfileManager* GetProfileManager() = 0;
virtual SettingsManager* GetSettingsManager() = 0;
virtual void DeviceListChanged() = 0;
virtual void UpdateDeviceList() = 0;
virtual void WaitForDeviceDetection() = 0;
protected:
@ -90,7 +90,7 @@ public:
ResourceManager();
~ResourceManager();
void RegisterI2CBus(i2c_smbus_interface *);
std::vector<i2c_smbus_interface*> & GetI2CBusses();
@ -120,6 +120,9 @@ public:
std::string GetConfigurationDirectory();
void RegisterNetworkClient(NetworkClient* new_client);
void UnregisterNetworkClient(NetworkClient* network_client);
std::vector<NetworkClient*>& GetClients();
NetworkServer* GetServer();
@ -128,6 +131,7 @@ public:
void SetConfigurationDirectory(std::string directory);
void UpdateDeviceList();
void DeviceListChanged();
void DetectionProgressChanged();
void I2CBusListChanged();