carback.h 1021 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef CARBACK_H
  2. #define CARBACK_H
  3. #include <QObject>
  4. #include <QGuiApplication>
  5. //struct vin_screen {
  6. // unsigned int disp_x;
  7. // unsigned int disp_y;
  8. // unsigned int disp_width;
  9. // unsigned int disp_height;
  10. //};
  11. class CarbackPrivate;
  12. class Carback : public QObject
  13. {
  14. Q_OBJECT
  15. #ifdef g_Carback
  16. #undef g_Carback
  17. #endif
  18. #define g_Carback (Carback::instance())
  19. public:
  20. inline static Carback* instance() {
  21. static Carback *carback(new Carback(qApp));
  22. return carback;
  23. }
  24. void initialize();
  25. void localDeviceName();
  26. enum CarbackStatus {
  27. CBS_Undefine = -1,
  28. CBS_Off,
  29. CBS_On,
  30. };
  31. enum SignalStatus {
  32. ACS_Undefine = -1,
  33. ACS_NoDetectSignal,
  34. ACS_DetectSignal,
  35. };
  36. signals:
  37. void onCarbackStatusChange(int status);
  38. void onDetectSignal(int status);
  39. private:
  40. explicit Carback(QObject *parent = nullptr);
  41. ~Carback();
  42. CarbackPrivate* const d_ptr;
  43. Q_DECLARE_PRIVATE(Carback)
  44. };
  45. #endif // CARBACK_H