#0017: 调试 etalon 实验时,对每个点新增延时,但延时数量不对应,待修复; 变焦功能,增加日志打印
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
// HSI_Motion.cpp : 定义 DLL 的初始化例程。
|
||||
// HSI_Motion.cpp : 定义 DLL 的初始化例程。
|
||||
#include "stdafx.h"
|
||||
#include "HSI.h"
|
||||
#include "HSI_Sevenocean_EF3.h"
|
||||
@@ -3486,7 +3486,7 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] In\n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] In *********************************************** \n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] AxisTypes = %d, PositionX = %.4f,PositionY = %.4f,PositionZ = %.4f\n", AxisTypes, PositionX, PositionY, PositionZ);
|
||||
|
||||
axis_start = 0;
|
||||
@@ -3502,7 +3502,7 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P
|
||||
LimitOver(HSI_MOTION_AXIS_Z, PositionZ);
|
||||
LimitOver(HSI_MOTION_AXIS_R, m_PositionA);
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[SetPositionXyz] LimitOver, PositionX = %.4f, PositionY = %.4f, PositionZ = %.4f, m_PositionA = %.4f\n",
|
||||
L"[SetPositionXyz] LimitOverCheck, PositionX = %.4f, PositionY = %.4f, PositionZ = %.4f, m_PositionA = %.4f\n",
|
||||
PositionX, PositionY, PositionZ, m_PositionA);
|
||||
|
||||
//SetpositionXyz的目标位置
|
||||
@@ -3601,7 +3601,7 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Out\n");
|
||||
rStatus = HSI_STATUS_MOTION_MOVING;
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Out\n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Out *********************************************** \n");
|
||||
targetpos_l[1] = PositionX;
|
||||
targetpos_l[2] = PositionY;
|
||||
targetpos_l[3] = PositionZ;
|
||||
@@ -4112,10 +4112,10 @@ HSI_STATUS HSI_Motion::Load_EF3_Motion_Inifile(CString GoogolIniFile)
|
||||
temp.GetBufferSetLength(50), 10, csAppPath);
|
||||
float speed = (atof(T2A(temp)));
|
||||
//printf("spedd:%.2F %S\n",speed, L"JOG_DRIVESPEED_" + strGear[i] + axisNum[j]); //调试打印
|
||||
/*m_JogDriveSpeed[j][i] = GetPrivateProfileInt(L"JOG_SPEED", L"JOG_DRIVESPEED_" , 10, csAppPath);*/
|
||||
//m_JogDriveSpeed[j][i] = GetPrivateProfileInt(L"JOG_SPEED", L"JOG_DRIVESPEED_" , 10, csAppPath);
|
||||
//m_JogDriveSpeed[j][i] = speed / (m_Resolution[j] * 50);//速度转换为脉冲
|
||||
m_JogDriveSpeed[j][i] = speed; //直接读取速度
|
||||
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_JogDriveSpeed[%d][%d]: %ld %ld\n", j, i,
|
||||
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_JogDriveSpeed[%d][%d]: %f %ld\n", j, i,
|
||||
speed, m_JogDriveSpeed[j][i]); //打印配置文件 档位速度
|
||||
|
||||
GetPrivateProfileString(L"JOG_SPEED", L"JOG_STARTSPEED_" + strGear[i] + axisNum[j], L"10",
|
||||
@@ -4130,8 +4130,8 @@ HSI_STATUS HSI_Motion::Load_EF3_Motion_Inifile(CString GoogolIniFile)
|
||||
csAppPath);
|
||||
}
|
||||
}
|
||||
m_Jog_Auto_Focus = m_JogDriveSpeed[3][4];
|
||||
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_Jog_Auto_Focus: %f\n", m_Jog_Auto_Focus); //记录自动对焦速度
|
||||
m_Jog_Auto_Focus = m_JogDriveSpeed[3][4]; //3轴4档位速度
|
||||
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Motion_Inifile] m_Jog_Auto_Focus: %d\n", m_Jog_Auto_Focus); //记录自动对焦速度
|
||||
m_Home_Machine_Axis[1] = GetPrivateProfileInt(L"HOME", L"HOME_MACHINE_AXIS_1", 1, csAppPath);
|
||||
m_Home_Machine_Axis[2] = GetPrivateProfileInt(L"HOME", L"HOME_MACHINE_AXIS_2", 1, csAppPath);
|
||||
m_Home_Machine_Axis[3] = GetPrivateProfileInt(L"HOME", L"HOME_MACHINE_AXIS_3", 1, csAppPath);
|
||||
@@ -7644,7 +7644,7 @@ int HSI_Motion::SpeedPercent(int AxisNum, double& Speed, int& DirveSpeed, int& S
|
||||
AccCurve = m_JogAccLine[AxisNum][0] * 10;
|
||||
DecCurve = m_JogDecLine[AxisNum][0] * 10;
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[SpeedPercent] 0.81 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
L"[SpeedPercent] 四挡 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
DirveSpeed, StartSpeed, AccLine, DecLine, AccCurve, DecCurve);
|
||||
}
|
||||
else if (fabs(Speed) > 0.61)
|
||||
@@ -7656,7 +7656,7 @@ int HSI_Motion::SpeedPercent(int AxisNum, double& Speed, int& DirveSpeed, int& S
|
||||
AccCurve = m_JogAccLine[AxisNum][1] * 10;
|
||||
DecCurve = m_JogDecLine[AxisNum][1] * 10;
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[SpeedPercent] 0.61 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
L"[SpeedPercent] 三档 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
DirveSpeed, StartSpeed, AccLine, DecLine, AccCurve, DecCurve);
|
||||
}
|
||||
else if (fabs(Speed) > 0.41)
|
||||
@@ -7668,7 +7668,7 @@ int HSI_Motion::SpeedPercent(int AxisNum, double& Speed, int& DirveSpeed, int& S
|
||||
AccCurve = m_JogAccLine[AxisNum][2] * 10;
|
||||
DecCurve = m_JogDecLine[AxisNum][2] * 10;
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[SpeedPercent] 0.41 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
L"[SpeedPercent] 二档 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
DirveSpeed, StartSpeed, AccLine, DecLine, AccCurve, DecCurve);
|
||||
}
|
||||
else if (fabs(Speed) > 0.21)
|
||||
@@ -7680,7 +7680,7 @@ int HSI_Motion::SpeedPercent(int AxisNum, double& Speed, int& DirveSpeed, int& S
|
||||
AccCurve = m_JogAccLine[AxisNum][3] * 10;
|
||||
DecCurve = m_JogDecLine[AxisNum][3] * 10;
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[SpeedPercent] 0.21 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
L"[SpeedPercent] 一档 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
DirveSpeed, StartSpeed, AccLine, DecLine, AccCurve, DecCurve);
|
||||
}
|
||||
else if (fabs(Speed) > 0.01)
|
||||
@@ -7692,7 +7692,7 @@ int HSI_Motion::SpeedPercent(int AxisNum, double& Speed, int& DirveSpeed, int& S
|
||||
AccCurve = m_JogAccLine[AxisNum][4] * 10;
|
||||
DecCurve = m_JogDecLine[AxisNum][4] * 10;
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[SpeedPercent] 0.01 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
L"[SpeedPercent] 零档 DriveSpeed: [%d], StartSpeed: [%d], AccLine: [%d], DecLine: [%d], AccCurve: [%d], DecCurve: [%d]\n",
|
||||
DirveSpeed, StartSpeed, AccLine, DecLine, AccCurve, DecCurve);
|
||||
}
|
||||
else
|
||||
@@ -7796,14 +7796,34 @@ HSI_STATUS HSI_Motion::GetSpeedXyzOld(int AxisNum, double& Speed)
|
||||
|
||||
HSI_STATUS HSI_Motion::GetSpeedXyz(int AxisNum, double& Speed)
|
||||
{
|
||||
//g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] In\n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] In ================================ \n");
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
short AxisNumber = AxisConvertIndex(AxisNum); //将轴号转换为 平台轴号
|
||||
|
||||
//打印轴号换算后的值
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] AxisNum = %d, AxisNumber = %d\n", AxisNum, AxisNumber);
|
||||
|
||||
// 方式1
|
||||
for (int j = 0;j < 9;j++)
|
||||
{
|
||||
//写日志
|
||||
g_pLogger->SendAndFlushWithTime(L"m_SetPotion_DriveSpeed[%d] = %d\n", j, m_SetPotion_DriveSpeed[j]);
|
||||
}
|
||||
Speed = m_SetPotion_DriveSpeed[AxisNumber]; //从m_SetPotion_DriveSpeed[AxisNumber]中获取速度
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] AxisNum = %d, Speed=%d\n", AxisNumber, Speed);
|
||||
|
||||
//g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] Out\n");
|
||||
|
||||
|
||||
//方式2,从底层查询
|
||||
double getMotionParam[5] = { 0 };
|
||||
GetSingleAxisParam(AxisNumber, getMotionParam); //获取单轴运动参数
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
L"[GetSingleAxisParam] Axis= %d, Velocity = %.2f, Acceleration= %.2f, Deceleration= %.2f, KillDeceleration= %.2f, Jerk= %.2f\n",
|
||||
AxisNumber, getMotionParam[0], getMotionParam[1], getMotionParam[2], getMotionParam[3], getMotionParam[4]);
|
||||
|
||||
Speed = getMotionParam[0]; //从getMotionParam[0]中获取速度
|
||||
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] AxisNum = %d, Speed=%.2f\n", AxisNumber, Speed);
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetSpeedXyz] Out ================================ \n");
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
@@ -7811,7 +7831,7 @@ HSI_STATUS HSI_Motion::GetSpeedXyz(int AxisNum, double& Speed)
|
||||
HSI_STATUS HSI_Motion::SetSpeedXyz(double Speed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] In\n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] In ================================ \n");
|
||||
if (Speed >= -1 && Speed <= 0)
|
||||
{
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] Speed = %f, m_Jog_Auto_Focus = %f\n", Speed, m_Jog_Auto_Focus);
|
||||
@@ -7833,7 +7853,7 @@ HSI_STATUS HSI_Motion::SetSpeedXyz(double Speed)
|
||||
//}
|
||||
m_SetPotion_DriveSpeed[1] = static_cast<int>(Speed);
|
||||
//打印 m_setotion_drivespeed[1]的值
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] m_iSpeedType=1, m_SetPotion_DriveSpeed[1] = %d\n", m_SetPotion_DriveSpeed[1]);
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] m_iSpeedType=1, m_SetPotion_DriveSpeed[1] = %.2f\n", m_SetPotion_DriveSpeed[1]);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -7847,29 +7867,29 @@ HSI_STATUS HSI_Motion::SetSpeedXyz(double Speed)
|
||||
// m_SetPotion_DriveSpeed[1] = 0;
|
||||
//}
|
||||
//打印 m_setotion_drivespeed[1]的值
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] m_SetPotion_DriveSpeed[1] = %d\n", m_SetPotion_DriveSpeed[1]);
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] m_SetPotion_DriveSpeed[1] = %.2f\n", m_SetPotion_DriveSpeed[1]);
|
||||
}
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] Out\n");
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSpeedXyz] Out ================================ \n");
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
HSI_STATUS HSI_Motion::GetFocusSpeedOld(double& Speed)
|
||||
{
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] In\n");
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (1 == m_iSpeedType)
|
||||
{
|
||||
Speed = m_JogDriveSpeed[3][4] * (m_Resolution[3] * 50);
|
||||
}
|
||||
else
|
||||
{
|
||||
Speed = m_JogDriveSpeed[3][4];
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] Out\n");
|
||||
return rStatus;
|
||||
}
|
||||
//HSI_STATUS HSI_Motion::GetFocusSpeedOld(double& Speed)
|
||||
//{
|
||||
// g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] In\n");
|
||||
// auto rStatus = HSI_STATUS_NORMAL;
|
||||
// if (1 == m_iSpeedType)
|
||||
// {
|
||||
// Speed = m_JogDriveSpeed[3][4] * (m_Resolution[3] * 50);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// Speed = m_JogDriveSpeed[3][4];
|
||||
// }
|
||||
// g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] Out\n");
|
||||
// return rStatus;
|
||||
//}
|
||||
|
||||
HSI_STATUS HSI_Motion::GetFocusSpeed(double& Speed)
|
||||
{
|
||||
@@ -7877,59 +7897,63 @@ HSI_STATUS HSI_Motion::GetFocusSpeed(double& Speed)
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (1 == m_iSpeedType)
|
||||
{
|
||||
Speed = m_JogDriveSpeed[3][4] * (m_Resolution[3] * 50);
|
||||
//Speed = m_JogDriveSpeed[3][4] * (m_Resolution[3] * 50);
|
||||
Speed = m_JogDriveSpeed[3][4];
|
||||
}
|
||||
else
|
||||
{
|
||||
Speed = m_JogDriveSpeed[3][4];
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] Speed = %d, m_Jog_Auto_Focus = %d\n", Speed, m_Jog_Auto_Focus);
|
||||
g_pLogger->SendAndFlushWithTime(L"[GetFocusSpeed] Out\n");
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
HSI_STATUS HSI_Motion::SetFocusSpeedOld(double Speed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] In\n");
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Speed = %f, m_Jog_Auto_Focus = %f\n", Speed, m_Jog_Auto_Focus);
|
||||
if (1 == m_iSpeedType)
|
||||
{
|
||||
m_JogDriveSpeed[3][4] = Speed / (m_Resolution[3] * 50);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_JogDriveSpeed[3][4] = Speed;
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_Jog_SpeedZ[3][4] = %f\n", m_JogDriveSpeed[4][3]);
|
||||
return rStatus;
|
||||
}
|
||||
//HSI_STATUS HSI_Motion::SetFocusSpeedOld(double Speed)
|
||||
//{
|
||||
// auto rStatus = HSI_STATUS_NORMAL;
|
||||
// g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] In\n");
|
||||
//
|
||||
// g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Speed = %f, m_Jog_Auto_Focus = %f\n", Speed, m_Jog_Auto_Focus);
|
||||
// if (1 == m_iSpeedType)
|
||||
// {
|
||||
// m_JogDriveSpeed[3][4] = Speed / (m_Resolution[3] * 50);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// m_JogDriveSpeed[3][4] = Speed;
|
||||
// }
|
||||
// g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_Jog_SpeedZ[3][4] = %f\n", m_JogDriveSpeed[4][3]);
|
||||
// return rStatus;
|
||||
//}
|
||||
|
||||
HSI_STATUS HSI_Motion::SetFocusSpeed(double Speed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] In\n");
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Speed = %f\n", Speed);
|
||||
if (Speed >= -1 && Speed <= 0)
|
||||
{
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Speed = %f, m_Jog_Auto_Focus = %f\n", Speed, m_Jog_Auto_Focus);
|
||||
|
||||
m_JogDriveSpeed[3][4] = static_cast<int>(fabs(Speed * m_Jog_Auto_Focus));
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_Jog_SpeedZ[3][4] = %f\n", m_JogDriveSpeed[3][4]);
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_Jog_SpeedZ[3][4] = %d\n", m_JogDriveSpeed[3][4]);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (1 == m_iSpeedType)
|
||||
{
|
||||
m_JogDriveSpeed[3][4] = Speed / (m_Resolution[3] * 50);
|
||||
//m_JogDriveSpeed[3][4] = Speed / (m_Resolution[3] * 50);
|
||||
m_JogDriveSpeed[3][4] = Speed;
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_iSpeedType=1, m_Jog_SpeedZ[3][4] = %f\n", m_JogDriveSpeed[4][3]);
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_iSpeedType=1, m_Jog_SpeedZ[3][4] = %d\n", m_JogDriveSpeed[3][4]);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_JogDriveSpeed[3][4] = Speed;
|
||||
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_SetPotion_DriveSpeed[1] = %d\n", m_JogDriveSpeed[4][3]);
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] m_JogDriveSpeed[3][4] = %d\n", m_JogDriveSpeed[3][4]);
|
||||
}
|
||||
}
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetFocusSpeed] Out\n");
|
||||
@@ -8055,8 +8079,6 @@ void HSI_Motion::SetSingleAxisMotionParams(UINT AxisTypes, double SetMotionParam
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisMotionParams] In >>>>>>>>>>>>>>>>>>>>>> \n");
|
||||
double getMotionParam[5] = { 0 };
|
||||
|
||||
//打印 AxisTypes
|
||||
g_pLogger->SendAndFlushWithTime(L"[SetSingleAxisMotionParams] AxisTypes = %d\n", AxisTypes);
|
||||
|
||||
GetSingleAxisParam(AxisTypes, getMotionParam); //获取单轴运动参数
|
||||
g_pLogger->SendAndFlushWithTime(
|
||||
|
||||
@@ -5,7 +5,11 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
#include <iostream>
|
||||
#include <io.h>
|
||||
#include <direct.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
void CLogger::SendAtTime(const TCHAR* buffer)
|
||||
{
|
||||
@@ -111,10 +115,10 @@ void CLogger::SendAndFlushWithTime(LPCTSTR format, ...)
|
||||
|
||||
va_end(list);
|
||||
}
|
||||
/*放弃当前线程对锁定部分的所有权。一旦锁定部分的所有权被放弃,那么请求访问临界区的下一个线程,将可以对锁定部分进行操作。每一个调用EnterCriticalSection的线程,都应该调用一次LeaveCriticalSection。
|
||||
//放弃当前线程对锁定部分的所有权。一旦锁定部分的所有权被放弃,那么请求访问临界区的下一个线程,将可以对锁定部分进行操作。每一个调用EnterCriticalSection的线程,都应该调用一次LeaveCriticalSection。
|
||||
|
||||
使一个线程可以使用一个临界段对象来进行互斥同步。这个过程需要优先创建一个临界区结构体变量(分配使用内存)。在使用临界区之前, 待操作临界区的进程必须调用InitializeCriticalSection 或者 InitializeCriticalSectionAndSpinCount函数来初始化临界区。
|
||||
一个线程使用EnterCriticalSection 或TryEnterCriticalSection函数来获得关键部分对象的所有权时,该线程必须在离开临界区时调用LeaveCriticalSection。*/
|
||||
//使一个线程可以使用一个临界段对象来进行互斥同步。这个过程需要优先创建一个临界区结构体变量(分配使用内存)。在使用临界区之前, 待操作临界区的进程必须调用InitializeCriticalSection 或者 InitializeCriticalSectionAndSpinCount函数来初始化临界区。
|
||||
// 一个线程使用EnterCriticalSection 或TryEnterCriticalSection函数来获得关键部分对象的所有权时,该线程必须在离开临界区时调用LeaveCriticalSection。
|
||||
|
||||
LeaveCriticalSection(&m_lockLogger);
|
||||
}
|
||||
@@ -152,12 +156,6 @@ string ConvertCharToString(char* a, int size)
|
||||
}
|
||||
|
||||
//删除指定目录以及目录下的所有文件
|
||||
#include <iostream>
|
||||
#include <io.h>
|
||||
#include <direct.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
void DelFiles(string path)
|
||||
{
|
||||
//在目录后面加上"\\*.*"进行第一次搜索
|
||||
@@ -170,7 +168,7 @@ void DelFiles(string path)
|
||||
|
||||
if (handle == -1)
|
||||
{
|
||||
cout << "无文件" << endl;
|
||||
//cout << "无文件" << endl;
|
||||
system("pause");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -12,5 +12,5 @@
|
||||
#define HSI_VERSION_REVNUM
|
||||
#define HSI_VERSION_BUILD_DATE _T(__DATE__ )
|
||||
#define HSI_VERSION_BUILD_TIME _T(__TIME__ )
|
||||
#define HSI_FILE_DESCRIPTION "2024.12.23 / 13:41 "
|
||||
#define HSI_FILE_CSDESCRIPTION _T("2024.12.23 / 13:41 ")
|
||||
#define HSI_FILE_DESCRIPTION "2025.02.13 / 17:57 "
|
||||
#define HSI_FILE_CSDESCRIPTION _T("2025.02.13 / 17:57 ")
|
||||
|
||||
@@ -766,8 +766,10 @@ namespace HexcalMC
|
||||
{
|
||||
//增加2秒延时
|
||||
Thread.Sleep((int)dwellTime);
|
||||
//int currentDwellTime = dwellTimes[currentIndex] * 1000; // 将秒转换为毫秒
|
||||
//Thread.Sleep(currentDwellTime);
|
||||
|
||||
Point nextPoint = filteredPoints[currentIndex];
|
||||
Point nextPoint = filteredPoints[currentIndex];
|
||||
//打印 nextPoint
|
||||
DebugDfn.AddLogText(
|
||||
"下发指令:"
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>z2mLqy08XuUV8hlnpHyZ0pykJWrtzR1mUJK4Iyn9kS4=</dsig:DigestValue>
|
||||
<dsig:DigestValue>o9GBKbn6bHl5Tbw9WSRdf0fjMgTcBKZwOi2zbjSGZL8=</dsig:DigestValue>
|
||||
</hash>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
|
||||
Binary file not shown.
@@ -62,7 +62,7 @@
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>4DR1ksKlokf+OktGK8d+8M0auawSIh8axvkUM7xdmUc=</dsig:DigestValue>
|
||||
<dsig:DigestValue>f9lPz4efLHPXDVjq6WbZBlYqubnq7d52jUr55F7l9wk=</dsig:DigestValue>
|
||||
</hash>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user