12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #ifndef __SOUNDCARDDATA_H__
- #define __SOUNDCARDDATA_H__
- #include "GlobalVariable.h"
- #include <qlist.h>
- /**
- * @brief 声卡信息管理器
- * 1、这里可以设置当前声卡信息,获取当前选择的声卡信息,以免多个窗口声卡传递链特别长
- *
- */
- #define SoundCards SoundCardDataManager::getInstance()
- class SoundCardDataManager
- {
- SoundCardDataManager() = default;
-
- SoundCardDataManager(const SoundCardDataManager&) = delete;
- SoundCardDataManager& operator=(const SoundCardDataManager&) = delete;
- public:
- ~SoundCardDataManager();
- static SoundCardDataManager& getInstance()
- {
- static SoundCardDataManager instance;
- return instance;
- }
- /* 设置声卡列表 */
- void setSoundCardInfo(QMap<int, SoundCardInfo_t>& soundInfo);
- /* 获取声卡列表 */
- const QMap<int, SoundCardInfo_t>& getSoundCardInfo() const { return m_mapSoundCardInfo; }
- /* 获取单个声卡信息 */
- SoundCardInfo_t getOneSoundCardInfo(int nSoundCardNum) const;
- /* 设置当前声卡 */
- bool setCurrentSoundCard(int nSoundCardNum);
- /* 获取当前声卡信息 */
- const SoundCardInfo_t& getCurrentSoundCardInfo() const { return m_currentSoundCardInfo; }
- /* 根据声卡编号和录音通道编号获取声卡信息 */
- SoundCardRoadInfo_t getSoundCardRoadInfo(int nSoundCardNum, int nChannelID);
- /* 获取当前带有声卡信息的通道列表 */
- const QList<SoundCardRoadInfo_t>& getCurrSoundCardRoadList() const;
-
- private:
-
- /* 声卡信息,key为声卡编号 */
- QMap<int, SoundCardInfo_t> m_mapSoundCardInfo;
- /* 当前选择的声卡编号 */
- SoundCardInfo_t m_currentSoundCardInfo;
- /* 带有声卡信息的通道列表,设置当前声卡信息的时候会更新 */
- QList<SoundCardRoadInfo_t> m_listSoundCardRoad;
- };
- #endif // __SOUNDCARDDATA_H__
|