OTSSEMOxford.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #pragma once
  2. #include "..\OTSControl\OTSSemBase.h"
  3. #include "OTSOxfordImpl.h"
  4. namespace OTSController {
  5. class COTSSEMOxford : public COTSSemBase
  6. {
  7. public:
  8. COTSSEMOxford(void);
  9. virtual ~COTSSEMOxford(void);
  10. public:
  11. virtual OTSSEMController::SEM_ID GetType() override { return OTSSEMController::SEM_ID::OXFORD; }
  12. virtual BOOL IsConnected(void) override;
  13. virtual BOOL Connect(void) override;
  14. virtual BOOL Disconnect(void) override
  15. {
  16. if (!m_oxfordImpl)
  17. {
  18. m_oxfordImpl = OxfordImpl::GetInstance();
  19. return m_oxfordImpl->DisConnect();
  20. }
  21. return true;
  22. };// do nothing for this controller
  23. virtual BOOL GetBeamBlank(long& a_nBeamBlank) override;
  24. virtual BOOL SetBeamBlank(long a_nBeamBlank) override;
  25. virtual BOOL GetBrightness(double& /*a_dBrightness*/) override { return true; }
  26. virtual BOOL SetBrightness(double /*a_dBrightness*/) override { return true; }
  27. virtual BOOL GetContrast(double& /*a_dContrast*/) override { return true; }
  28. virtual BOOL SetContrast(double /*a_dContrast*/) override { return true; }
  29. virtual BOOL GetWorkingDistance(double& a_dWorkingDistance) override;
  30. virtual BOOL SetWorkingDistance(double a_dWorkingDistance) override;
  31. virtual BOOL GetHighTension(double& a_dKV) override;
  32. virtual BOOL SetHighTension(double a_dKV) override;
  33. virtual BOOL GetMagnification(double& a_dMagnification) override;
  34. virtual BOOL SetMagnification(double a_dMagnification) override;
  35. virtual BOOL GetScanFieldSize(double& a_dScanFieldSizeX, double& a_dScanFieldSizeY) override;
  36. virtual BOOL SetScanFieldSizeX(double a_dScanFieldSizeX) override;
  37. virtual BOOL GetHTOnOff(BOOL& /*a_bHTValue*/) override { return TRUE; }
  38. virtual BOOL SetHTOnOff(BOOL /*a_bHTValue*/) override { return true; }
  39. virtual BOOL GetPositionXY(double& a_dPositionX, double& a_dPositionY, double& a_dPositionR) override;
  40. virtual BOOL SetPositionXY(double a_dPositionX, double a_dPositionY, double a_dPositionR) override;
  41. virtual BOOL GetSpotSize(double& /*a_dSpotSize*/) override { return true; }
  42. virtual BOOL SetSpotSize(double /*a_dSpotSize*/) override { return true; }
  43. virtual BOOL GetScanMode(long& /*a_nScanMode*/) override { return true; }
  44. virtual BOOL SetScanMode(long /*a_nScanMode*/) override { return true; }
  45. virtual BOOL SetScanExternal(BOOL a_bExternal) override;
  46. virtual int GetExternalMode() override { return 1; };
  47. protected:
  48. std::shared_ptr<OxfordImpl> m_oxfordImpl;
  49. };
  50. }