#pragma once #include "OTSScanBase.h" #include "OTSBrukerImpl.h" namespace OTSController { class __declspec(dllexport) COTSScanBrucker :public COTSScanBase { public: /// /// Creates a new IADBruker instance. /// COTSScanBrucker(); virtual ~COTSScanBrucker(); // initialization virtual BOOL Init() override; virtual ScanController::SCANNER_ID GetType() override { return ScanController::SCANNER_ID::BRUKER; } public: // move beam to point virtual BOOL MoveBeamTo(CPoint& a_beamPos) override; // set Image Size virtual BOOL SetImageSize(long nImageSize,long nHeight) override; /// set dwell time virtual BOOL SetDwellTime(long nDwellTime) override; // acquire BSE image virtual CBSEImgPtr AcquireBSEImage() override; private: DWORD nWidth = 0; DWORD nHeight = 0; std::shared_ptr m_pBrukerImpl; }; }