IServoDrive.h 696 B

123456789101112131415161718192021222324252627
  1. #pragma once
  2. namespace DIOS::Dev::Detail::MachineryECOM
  3. {
  4. struct SevoDriveCommand
  5. {
  6. BOOL IsValidate;
  7. unsigned short Address;
  8. unsigned short Context;
  9. };
  10. class IServoDrive
  11. {
  12. public:
  13. IServoDrive(){}
  14. virtual ~IServoDrive(){}
  15. public:
  16. virtual void Initialize(int driveNumber) = 0;
  17. virtual bool MakeServoOnEnablePacket(std::basic_string<unsigned char> &outbuffer) = 0;
  18. virtual bool MakeServoOnPacket(BOOL servoon, std::basic_string<unsigned char> &outbuffer) = 0;
  19. virtual bool MakePulseOnCirclePacket(unsigned short pulsenumber, std::basic_string<unsigned char> &outbuffer) = 0;
  20. virtual bool MakeClearWarningPacket(std::basic_string<unsigned char> &outbuffer) = 0;
  21. };
  22. }