|
@@ -78,6 +78,10 @@ namespace SmartSEMControl
|
|
|
private String DP_DETECTOR_TYPE = "DP_DETECTOR_TYPE";
|
|
|
//图像大小
|
|
|
private String DP_IMAGE_STORE = "DP_IMAGE_STORE";
|
|
|
+ //样品台状态
|
|
|
+ private String DP_STAGE_IS = "DP_STAGE_IS";
|
|
|
+ //自动函数状态
|
|
|
+ private String DP_AUTO_FUNCTION = "DP_AUTO_FUNCTION";
|
|
|
#endregion
|
|
|
|
|
|
#region 命令
|
|
@@ -100,7 +104,6 @@ namespace SmartSEMControl
|
|
|
#region APILib
|
|
|
private Api CZEMApi = new Api();
|
|
|
private Boolean m_bInitialised = false;
|
|
|
- private long lrt = 0;
|
|
|
#endregion
|
|
|
|
|
|
#region 构造函数
|
|
@@ -117,6 +120,7 @@ namespace SmartSEMControl
|
|
|
/// <returns>return:true or false</returns>
|
|
|
public Boolean Init()
|
|
|
{
|
|
|
+ long lrt = 0;
|
|
|
#if ROMOTE
|
|
|
lrt = CZEMApi.InitialiseRemoting();
|
|
|
#else
|
|
@@ -142,7 +146,7 @@ namespace SmartSEMControl
|
|
|
/// <returns>return:true or false</returns>
|
|
|
public Boolean InitRemoting()
|
|
|
{
|
|
|
- lrt = CZEMApi.InitialiseRemoting();
|
|
|
+ long lrt = CZEMApi.InitialiseRemoting();
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
m_bInitialised = false;
|
|
@@ -156,6 +160,13 @@ namespace SmartSEMControl
|
|
|
}
|
|
|
#endregion
|
|
|
|
|
|
+ #region 连接状态
|
|
|
+ public Boolean ConnectStatus()
|
|
|
+ {
|
|
|
+ return m_bInitialised;
|
|
|
+ }
|
|
|
+ #endregion
|
|
|
+
|
|
|
#region 关闭设备
|
|
|
/// <summary>
|
|
|
/// 关闭设备
|
|
@@ -165,7 +176,7 @@ namespace SmartSEMControl
|
|
|
{
|
|
|
if (m_bInitialised)
|
|
|
{
|
|
|
- lrt = CZEMApi.ClosingControl();
|
|
|
+ long lrt = CZEMApi.ClosingControl();
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
return false;
|
|
@@ -189,7 +200,7 @@ namespace SmartSEMControl
|
|
|
if (m_bInitialised)
|
|
|
{
|
|
|
object varfloat = new VariantWrapper((float)0.0f);
|
|
|
- lrt = CZEMApi.Get(str_param, ref varfloat);
|
|
|
+ long lrt = CZEMApi.Get(str_param, ref varfloat);
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
return false;
|
|
@@ -215,7 +226,7 @@ namespace SmartSEMControl
|
|
|
//先取范围
|
|
|
object varMin = new VariantWrapper((float)0.0f);
|
|
|
object varMax = new VariantWrapper((float)0.0f);
|
|
|
- lrt = CZEMApi.GetLimits(str_param, ref varMin, ref varMax);
|
|
|
+ long lrt = CZEMApi.GetLimits(str_param, ref varMin, ref varMax);
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
return false;
|
|
@@ -229,17 +240,6 @@ namespace SmartSEMControl
|
|
|
return false;
|
|
|
}
|
|
|
return true;
|
|
|
- //这里是写入后读取判断值是否写入,也可以在事件1中捕获返回值
|
|
|
- //object varfloat = new VariantWrapper((float)0.0f);
|
|
|
- ////object varStr = new VariantWrapper("");
|
|
|
- //lrt = CZEMApi.Get(strPara, ref varfloat);
|
|
|
-
|
|
|
- //if (lrt != 0)
|
|
|
- //{
|
|
|
- // ReportError(lrt, "Set Value", strPara);
|
|
|
- // return;
|
|
|
- //}
|
|
|
- //lblgetValue.Text = Convert.ToDecimal(varfloat).ToString();
|
|
|
}
|
|
|
else
|
|
|
{
|
|
@@ -259,7 +259,7 @@ namespace SmartSEMControl
|
|
|
if (m_bInitialised)
|
|
|
{
|
|
|
object varFloat = new VariantWrapper(value);
|
|
|
- lrt = CZEMApi.Set(str_param, ref varFloat);// set value
|
|
|
+ long lrt = CZEMApi.Set(str_param, ref varFloat);// set value
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
return false;
|
|
@@ -278,7 +278,7 @@ namespace SmartSEMControl
|
|
|
{
|
|
|
if (m_bInitialised)
|
|
|
{
|
|
|
- lrt = CZEMApi.Execute(cmd);// execute command
|
|
|
+ long lrt = CZEMApi.Execute(cmd);// execute command
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
return false;
|
|
@@ -688,7 +688,7 @@ namespace SmartSEMControl
|
|
|
{
|
|
|
if (m_bInitialised)
|
|
|
{
|
|
|
- lrt = CZEMApi.Grab(xoff, yoff, width, height, type, filename);
|
|
|
+ long lrt = CZEMApi.Grab(xoff, yoff, width, height, type, filename);
|
|
|
if (lrt != 0)
|
|
|
{
|
|
|
return false;
|
|
@@ -1116,5 +1116,35 @@ namespace SmartSEMControl
|
|
|
return ExecuteCmd(CMDMCF);
|
|
|
}
|
|
|
#endregion
|
|
|
+
|
|
|
+ #region 读取样品台状态
|
|
|
+ public float GetStageIs()
|
|
|
+ {
|
|
|
+ float ret = 0;
|
|
|
+ if (ReadParams(DP_STAGE_IS, ref ret))
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return float.NaN;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ #endregion
|
|
|
+
|
|
|
+ #region 读取自动函数的状态
|
|
|
+ public float GetAutoFunction()
|
|
|
+ {
|
|
|
+ float ret = 0;
|
|
|
+ if (ReadParams(DP_AUTO_FUNCTION, ref ret))
|
|
|
+ {
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return float.NaN;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ #endregion
|
|
|
}
|
|
|
}
|