slave.h 572 B

12345678910111213141516171819202122232425262728293031
  1. #pragma once
  2. #include <tuple>
  3. #include <memory>
  4. #include "util/thread.h"
  5. #include "util/sharedmem.h"
  6. #include "net/udp_node.h"
  7. #include "base/error.h"
  8. /// <summary>
  9. /// 从设备
  10. /// </summary>
  11. class slave:public ylib::error_base
  12. {
  13. public:
  14. slave(const std::string& name,int flag);
  15. ~slave();
  16. /// <summary>
  17. /// 等待
  18. /// </summary>
  19. void wait();
  20. /// <summary>
  21. /// 写入
  22. /// </summary>
  23. /// <param name="data"></param>
  24. void write(uchar data);
  25. private:
  26. std::string m_name;
  27. // 共享内存
  28. std::unique_ptr<ylib::sharedmem> m_sm;
  29. // 标记
  30. int m_flag = -1;
  31. };