// // AudioSolo.h // libraries/audio/src // // Created by Clement Brisset on 11/5/18. // Copyright 2018 High Fidelity, Inc. // // Distributed under the Apache License, Version 2.0. // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // #pragma once #ifndef hifi_AudioSolo_h #define hifi_AudioSolo_h #include #include #include class AudioSolo { using Mutex = std::recursive_mutex; using Lock = std::unique_lock; public: bool isSoloing() const; QVector getUUIDs() const; void addUUIDs(QVector uuidList); void removeUUIDs(QVector uuidList); void reset(); void resend(); private: mutable Mutex _mutex; QSet _nodesSoloed; }; #endif // hifi_AudioSolo_h