devicemanage.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #ifndef DEVICEMANAGE_H
  2. #define DEVICEMANAGE_H
  3. #include "device.h"
  4. #include <map>
  5. #include <string>
  6. #include <stdint.h>
  7. using namespace std;
  8. class DeviceManage
  9. {
  10. public:
  11. explicit DeviceManage();
  12. virtual ~DeviceManage();
  13. bool connectDevice(Device::DeviceParams params);
  14. bool disconnectDevice(const string &serial);
  15. //VideoDecode* getDeviceDecoder() const;
  16. Controller* getController();
  17. void SetVideoStartCallback(FUNCVIDEOSTART funcVideoStart);
  18. void SetVideoInfoCallback(FUNCVIDEOINFO funcVideoInfo);
  19. void setServerFinishedCallback(void (*callback)(void*), void* parameter);
  20. void setServerRemovedCallback(void (*callback)(void*), void* parameter);
  21. private:
  22. static void device_disconnect_callback_func(string serial, void* parameter);
  23. static void server_finished_callback_func(void* parameter);
  24. void onVideoStartCallback(bool start, int width, int height);
  25. void onVideoInfoCallback(int width, int height, unsigned char* data, int length);
  26. //VideoDecode *m_pVideoDecoder;
  27. FUNCVIDEOSTART mFuncVideoStart;
  28. FUNCVIDEOINFO mFuncVideoInfo;
  29. Controller *m_pController;
  30. void (*m_sfcallback)(void *);
  31. void (*m_srcallback)(void *);
  32. void *m_parameter;
  33. private:
  34. //QMap<string, Device* > m_devices;
  35. // map<string, Device*> m_devices;
  36. Device *mDevice;
  37. unsigned short m_localPortStart = 27183;
  38. };
  39. #endif // DEVICEMANAGE_H