Browse Source

修改代码同时存在SYNC_IN和SYNC_OUT模式

lwk 1 day ago
parent
commit
9b4fafe496
1 changed files with 21 additions and 1 deletions
  1. 21 1
      Detector/TiRay/CCOS.Dev.FPD.TiRayDR/Detector_TiRayDR.cpp

+ 21 - 1
Detector/TiRay/CCOS.Dev.FPD.TiRayDR/Detector_TiRayDR.cpp

@@ -448,6 +448,26 @@ bool Detector_TiRayDR::SetAcqMode(int nMode)
 		//if (err != Err_Success)
 			//FERROR("[Detector_TiRayDR::OpenDetector] Failed to write Attr_PhotoNumber. Error code: {$}", err);
 	}
+	else if (nMode == AcqMode::CF)
+	{
+		workMode = WorkMode_SyncOut;
+		m_bIsMultiFrame = true; // 多帧图
+		modeName = "CF";
+
+		// PF模式下,优先使用SetExposureTimes设置的值,若未设置则使用配置值
+		if (m_nXWindow > 0)
+		{
+			nXWindow = m_nXWindow;
+			FINFO("CF mode: Using custom exposure times from SetExposureTimes: {$}", nXWindow);
+		}
+		else
+		{
+			FWARN("CF mode: m_nXWindow not set, using config value: {$}", nXWindow);
+		}
+		auto err = write_attribute(Attr_PhotoNumber, 8);
+		if (err != Err_Success)
+			FERROR("[Detector_TiRayDR::OpenDetector] Failed to write Attr_PhotoNumber. Error code: {$}", err);
+	}
 	else
 	{
 		FERROR("Invalid acquisition mode: {$}", nMode);
@@ -2114,7 +2134,7 @@ static std::string generateReadableTimestamp()
 
 std::string Detector_TiRayDR::saveProcessedImage(Detector_TiRayDR& detector, unsigned short* data, size_t size, const std::string& baseTimestamp)
 {
-	const size_t MAX_PROC_FILE_COUNT = 10;
+	const size_t MAX_PROC_FILE_COUNT = 20;
 	const std::string TMPFS_DIR = "/mnt/tmpfs/";
 	const std::string BACKUP_DIR = "/userdata/RawData/";
 	const std::string ORIGINAL_DIR = detector.m_strWorkPath + "/RawData/";