GlobalInfo.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #ifndef __GLOBALINFO_H__
  2. #define __GLOBALINFO_H__
  3. #include "GlobalVariable.h"
  4. /**
  5. * @brief 全局信息类
  6. *
  7. */
  8. #define GInfo GlobalInfo::instance()
  9. class GlobalInfo
  10. {
  11. GlobalInfo() = default;
  12. GlobalInfo(const GlobalInfo&) = delete;
  13. GlobalInfo& operator=(const GlobalInfo&) = delete;
  14. public:
  15. ~GlobalInfo();
  16. static GlobalInfo& instance()
  17. {
  18. static GlobalInfo instance;
  19. return instance;
  20. }
  21. /* 初始化全局信息 */
  22. bool initGlobalInfo();
  23. /* 获取默认的对比项参数 */
  24. const CompareItemInfo_t& getDefaultCompareItem() const {return m_defaultCompareItem; }
  25. /* 设置对比项默认的参数 */
  26. void setDefaultCompareItem(const CompareItemInfo_t& item);
  27. /* 获取最外层的窗口指针 */
  28. QWidget* getTopWindow() const { return m_topWindow; }
  29. /* 设置最外层的窗口指针 */
  30. void setTopWindow(QWidget* topWindow) { m_topWindow = topWindow; }
  31. public:
  32. private:
  33. /* 对比项默认参数 */
  34. CompareItemInfo_t m_defaultCompareItem;
  35. /* 最外层的窗口指针 */
  36. QWidget* m_topWindow = nullptr;
  37. };
  38. #endif // __GLOBALINFO_H__