simplify state change callback handling

This commit is contained in:
Alexey Rybalchenko
2017-08-28 13:35:45 +02:00
committed by Mohammad Al-Turany
parent eeb994a584
commit 4dd08051cc
3 changed files with 29 additions and 60 deletions

View File

@@ -228,11 +228,11 @@ bool FairMQStateMachine::WaitForEndOfStateForMs(std::string event, int durationI
void FairMQStateMachine::SubscribeToStateChange(const std::string& key, std::function<void(const State)> callback)
{
fStateChangeCallbacks.insert({key, fStateChangeCallback.connect(callback)});
fStateChangeSignalsMap.insert({key, fStateChangeSignal.connect(callback)});
}
void FairMQStateMachine::UnsubscribeFromStateChange(const std::string& key)
{
fStateChangeCallbacks.at(key).disconnect();
fStateChangeCallbacks.erase(key);
fStateChangeSignalsMap.at(key).disconnect();
fStateChangeSignalsMap.erase(key);
}