IMeasureHardware.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using OTSDataType;
  7. using System.Drawing;
  8. using OTSCLRINTERFACE;
  9. namespace OTSModelSharp.ServiceCenter
  10. {
  11. public enum EDSTYPE
  12. {
  13. OFFLINE =0,
  14. BRUKER =1,
  15. OXFORD=2,
  16. FEI=3
  17. }
  18. public interface ISemController
  19. {
  20. bool IsConnected();
  21. bool Connect();
  22. bool DisConnect();
  23. bool SetMagnification(double a_dMagnification);
  24. bool GetMagnification(ref double a_dMagnification);
  25. bool SetWorkingDistance(double a_distance);
  26. bool GetWorkingDistance(ref double a_distance);
  27. bool SetScanExternal(bool b);
  28. bool GetScanFieldSize(ref double dScanFieldSizeX,ref double dScanFieldSizeY);
  29. bool GetSemPositionXY(ref double a_dPositionX, ref double a_dPositionY, ref double a_dPositionR);
  30. bool MoveSEMToPoint(double a_dPositionX, double a_dPositionY, double rotation);
  31. bool MoveSEMToPoint(double a_dPositionX, double a_dPositionY);
  32. bool SetSemBrightness(double a_dBrightness);
  33. bool GetSemBrightness(ref double a_dBrightness);
  34. bool SetSemContrast(double a_dContrast);
  35. bool GetSemContrast(ref double a_dContrast);
  36. bool SetSemHighTension(double a_dKV);
  37. bool GetSemHighTension(ref double a_dKV);
  38. bool SetSemBeamCurrent(bool a_dKV);
  39. bool SetSemBeamBlank(bool a_dKV);
  40. bool GetSemBeamBlank(ref int a_nBeamBlank);
  41. bool StopXrayAcquisition();
  42. }
  43. public interface IScanController
  44. {
  45. bool Init();
  46. bool SetDwellTime(double val);
  47. bool SetImageSize(int nWidth,int nHeight);
  48. CBSEImgClr AcquireBSEImage();
  49. }
  50. public interface IEDSController
  51. {
  52. bool Init();
  53. bool GetXRayByFeatures(List<COTSParticleClr> a_listParticles, double a_nXRayAQTime, bool a_bElementInfo /*= FALSE*/);//这里将DWORD转成了Double类型,因为在后续调用时还有DWORD强制转换
  54. bool GetXRayByParts(List<COTSParticleClr> a_listParticles, uint a_nXRayAQTime, bool a_bElementInfo /*= FALSE*/);
  55. bool CollectSpectrum(uint a_nXRayAQTime, ref uint[] a_XrayData);
  56. bool QuantifyXrayByPart(COTSParticleClr part);
  57. EDSTYPE GetEDSType();
  58. void SetFilterKeyEleNames(List<string> KeyNameList);
  59. void SetResolution(int resolutionWidth, int resolutionHeight);
  60. int GetExpectCount();
  61. bool GetIfDelayQuantify();
  62. }
  63. }