IMeasureHardware.cs 2.5 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 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 SetSemBeamCurrentOff(bool value);
  39. bool SetSemBeamBlank(bool value);
  40. bool SetSemHTOff(bool value);
  41. bool GetSemBeamBlank(ref int a_nBeamBlank);
  42. bool StopXrayAcquisition();
  43. }
  44. public interface IScanController
  45. {
  46. bool Init();
  47. bool SetDwellTime(double val);
  48. bool SetImageSize(int nWidth,int nHeight);
  49. CBSEImgClr AcquireBSEImage();
  50. }
  51. public interface IEDSController
  52. {
  53. bool Connect();
  54. bool GetXRayByFeatures(List<COTSParticleClr> a_listParticles, double a_nXRayAQTime, bool a_bElementInfo /*= FALSE*/);//这里将DWORD转成了Double类型,因为在后续调用时还有DWORD强制转换
  55. bool GetXRayByParts(List<COTSParticleClr> a_listParticles, uint a_nXRayAQTime, bool a_bElementInfo /*= FALSE*/);
  56. bool CollectSpectrum(uint a_nXRayAQTime, ref uint[] a_XrayData);
  57. bool QuantifyXrayByPart(COTSParticleClr part);
  58. EDSTYPE GetEDSType();
  59. void SetFilterKeyEleNames(List<string> KeyNameList);
  60. void SetResolution(int resolutionWidth, int resolutionHeight);
  61. int GetExpectCount();
  62. bool GetIfDelayQuantify();
  63. }
  64. }