ISensorEncoderController.h 844 B

1234567891011121314151617181920212223242526272829
  1. #pragma once
  2. #include "IComponentController.h"
  3. namespace DIOS::Dev::Detail::MachineryECOM
  4. {
  5. const int INVALID_ENCODER_VALUE = -1;
  6. class ISensorEncoderController : public IComponentController
  7. {
  8. public:
  9. ISensorEncoderController(){}
  10. virtual ~ISensorEncoderController(){}
  11. public:
  12. virtual int GetCurrentEncoderValue() = 0;
  13. virtual void LoadAxisInterfaceID(int id_axis_a, int id_axis_b, int id_axis_z) = 0;
  14. virtual void BindABAxis() = 0;
  15. virtual void BindZAxis() = 0;
  16. virtual void UnBindZAxis() = 0;
  17. virtual void ActiveAutoNotifyWhenZClear(bool active) = 0;
  18. virtual void ActiveExposureTrigger(int triggerID) = 0;
  19. virtual void ActiveRotateTrigger(int triggerID) = 0;
  20. virtual void SetExposureTrigger(int encoderValue) = 0;
  21. virtual void SetRotateTrigger(int encoderValue) = 0;
  22. virtual void ClearTrigger() = 0;
  23. };
  24. }