acq_vendor.h 755 B

12345678910111213141516171819202122232425262728293031
  1. #ifndef FOUNDATION_IOTACQ_ACQ_H
  2. #define FOUNDATION_IOTACQ_ACQ_H
  3. #include <vendor_global.h>
  4. #include <settings/config_parser.h>
  5. #include <leoyun/yun_rpc.h>
  6. #include <unordered_map>
  7. #include <uv.h>
  8. #include "acq_task.h"
  9. namespace iot_acq {
  10. class AcqVendor : public vendor::VendorBase {
  11. public:
  12. AcqVendor();
  13. virtual ~AcqVendor();
  14. virtual int Run();
  15. virtual std::string Name();
  16. virtual void Stop(int signal);
  17. protected:
  18. virtual int ParseCmdline(const std::string &optname, const std::string &optarg);
  19. virtual vendor::MyOpt *GetOpts();
  20. virtual int GetOptSize();
  21. private:
  22. settings::ConfigParser configParser_;
  23. uv_handle_t* timerCheck_ = nullptr;
  24. AcqTask *acqTask_ = nullptr;
  25. };
  26. }
  27. #endif // FOUNDATION_IOTACQ_ACQ_H