IMeasureHardware.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  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 SetScanFieldSize100(double dScanFieldSizeX,double dScanFieldSizeY);
  30. bool GetScanFieldSize100(ref double dScanFieldSizeX, ref double dScanFieldSizeY);
  31. bool GetSemPositionXY(ref double a_dPositionX, ref double a_dPositionY, ref double a_dPositionR);
  32. bool MoveSEMToPoint(double a_dPositionX, double a_dPositionY, double rotation);
  33. bool MoveSEMToPoint(double a_dPositionX, double a_dPositionY);
  34. bool SetSemBrightness(double a_dBrightness);
  35. bool GetSemBrightness(ref double a_dBrightness);
  36. bool SetSemContrast(double a_dContrast);
  37. bool GetSemContrast(ref double a_dContrast);
  38. bool SetSemHighTension(double a_dKV);
  39. bool GetSemHighTension(ref double a_dKV);
  40. bool SetSemBeamCurrent(bool a_dKV);
  41. bool SetSemBeamBlank(bool a_dKV);
  42. bool GetSemBeamBlank(ref int a_nBeamBlank);
  43. bool StopXrayAcquisition();
  44. }
  45. public interface IScanController
  46. {
  47. bool Init();
  48. bool SetDwellTime(double val);
  49. bool SetImageSize(int nWidth,int nHeight);
  50. CBSEImgClr AcquireBSEImage();
  51. }
  52. public interface IEDSController
  53. {
  54. bool Init();
  55. bool GetXRayByFeatures(List<COTSParticleClr> a_listParticles, double a_nXRayAQTime, bool a_bElementInfo /*= FALSE*/);//这里将DWORD转成了Double类型,因为在后续调用时还有DWORD强制转换
  56. bool GetXRayByParts(List<COTSParticleClr> a_listParticles, uint a_nXRayAQTime, bool a_bElementInfo /*= FALSE*/);
  57. bool CollectSpectrum(uint a_nXRayAQTime, ref uint[] a_XrayData);
  58. bool QuantifyXrayByPart(COTSParticleClr part);
  59. EDSTYPE GetEDSType();
  60. void SetFilterKeyEleNames(List<string> KeyNameList);
  61. void SetResolution(int resolutionWidth, int resolutionHeight);
  62. int GetExpectCount();
  63. }
  64. }