SoundCardData.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef __SOUNDCARDDATA_H__
  2. #define __SOUNDCARDDATA_H__
  3. #include "GlobalVariable.h"
  4. #include <qlist.h>
  5. /**
  6. * @brief 声卡信息管理器
  7. *
  8. */
  9. #define SoundCards SoundCardDataManager::getInstance()
  10. class SoundCardDataManager
  11. {
  12. SoundCardDataManager() = default;
  13. SoundCardDataManager(const SoundCardDataManager&) = delete;
  14. SoundCardDataManager& operator=(const SoundCardDataManager&) = delete;
  15. public:
  16. ~SoundCardDataManager();
  17. static SoundCardDataManager& getInstance()
  18. {
  19. static SoundCardDataManager instance;
  20. return instance;
  21. }
  22. /* 初始化声卡列表 */
  23. void initSoundCardList(QList<SoundCardInfo_t>& listSoundCard);
  24. /* 获取声卡列表 */
  25. const QList<SoundCardInfo_t>& getSoundCardList() const { return m_listSoundCard; }
  26. /* 根据声卡编号和录音通道编号获取声卡信息 */
  27. SoundCardRoadInfo_t getSoundCardRoadInfo(int nSoundCardNum, int nChannelID);
  28. /* 获取带有声卡信息的通道列表 */
  29. const QList<SoundCardRoadInfo_t>& getSoundCardRoadList() const;
  30. private:
  31. QList<SoundCardInfo_t> m_listSoundCard; /* 声卡信息列表 */
  32. QList<SoundCardRoadInfo_t> m_listSoundCardRoad; /* 带有声卡信息的通道列表,数据以上面的为准 */
  33. };
  34. #endif // __SOUNDCARDDATA_H__