#include "stdafx.h" #include "ConfigurerCalibration.h" #include "ConfigurationManager.h" using namespace DIOS::Dev::Detail::MachineryECOM; float ConfigurerCalibration::GetDetectorADToHeightSlope() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("DetectorADToHeightSlope")); } float ConfigurerCalibration::GetDetectorADToHeightIntercept() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("DetectorADToHeightIntercept")); } float ConfigurerCalibration::GetTubeHeightADToHeightSlope() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("TubeHeightADToHeightSlope")); } float ConfigurerCalibration::GetTubeHeightADToHeightIntercept() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("TubeHeightADToHeightIntercept")); } float ConfigurerCalibration::GetTubeAngleADToAngleSlope() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("TubeAngleADToAngleSlope")); } float ConfigurerCalibration::GetTubeAngleADToAngleIntercept() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("TubeAngleADToAngleIntercept")); } float ConfigurerCalibration::GetTubeHorizontalADToPositionSlope() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("TubeHorizontalADToPositionSlope")); } float ConfigurerCalibration::GetTubeHorizontalADToPositionIntercept() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("TubeHorizontalADToPositionIntercept")); } float ConfigurerCalibration::GetDetectorHorizontalADToPositionSlope() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("DetectorHorizontalADToPositionSlope")); } float ConfigurerCalibration::GetDetectorHorizontalADToPositionIntercept() { return (float)atof(ConfigurationManager::Instance()->GetCalibrationConfig("DetectorHorizontalADToPositionIntercept")); } void ConfigurerCalibration::UpdateTubeHeightADToHeightCurve(float slope, float intercept) { ResDataObject param; char buff[64] = { 0 }; sprintf_s(buff, "%.9f", slope); param.add("TubeHeightADToHeightSlope", buff); memset(buff,0,sizeof(buff)); sprintf_s(buff, "%.9f", intercept); param.add("TubeHeightADToHeightIntercept", buff); ConfigurationManager::Instance()->UpdateCalibrationConfig("TubeHeightADToHeightSlope", param); ConfigurationManager::Instance()->UpdateCalibrationConfig("TubeHeightADToHeightIntercept", param); } void ConfigurerCalibration::UpdateTubeAngleADToAngleCurve(float slope, float intercept) { ResDataObject param; char buff[64] = { 0 }; sprintf_s(buff, "%.9f", slope); param.add("TubeAngleADToAngleSlope", buff); memset(buff, 0, sizeof(buff)); sprintf_s(buff, "%.9f", intercept); param.add("TubeAngleADToAngleIntercept", buff); ConfigurationManager::Instance()->UpdateCalibrationConfig("TubeAngleADToAngleSlope", param); ConfigurationManager::Instance()->UpdateCalibrationConfig("TubeAngleADToAngleIntercept", param); } void ConfigurerCalibration::UpdateDetectorHeightADToHeightCurve(float slope, float intercept) { ResDataObject param; char buff[64] = { 0 }; sprintf_s(buff, "%.9f", slope); param.add("DetectorADToHeightSlope", buff); memset(buff, 0, sizeof(buff)); sprintf_s(buff, "%.9f", intercept); param.add("DetectorADToHeightIntercept", buff); ConfigurationManager::Instance()->UpdateCalibrationConfig("DetectorADToHeightSlope", param); ConfigurationManager::Instance()->UpdateCalibrationConfig("DetectorADToHeightIntercept", param); } void ConfigurerCalibration::UpdateTubeHorizontalADToPositionCurve(float slope, float intercept) { ResDataObject param; char buff[64] = { 0 }; sprintf_s(buff, "%.9f", slope); param.add("TubeHorizontalADToPositionSlope", buff); memset(buff, 0, sizeof(buff)); sprintf_s(buff, "%.9f", intercept); param.add("TubeHorizontalADToPositionIntercept", buff); ConfigurationManager::Instance()->UpdateCalibrationConfig("TubeHorizontalADToPositionSlope", param); ConfigurationManager::Instance()->UpdateCalibrationConfig("TubeHorizontalADToPositionIntercept", param); } void ConfigurerCalibration::UpdateDetectorHorizontalADToPositionCurve(float slope, float intercept) { ResDataObject param; char buff[64] = { 0 }; sprintf_s(buff, "%.9f", slope); param.add("DetectorHorizontalADToPositionSlope", buff); memset(buff, 0, sizeof(buff)); sprintf_s(buff, "%.9f", intercept); param.add("DetectorHorizontalADToPositionIntercept", buff); ConfigurationManager::Instance()->UpdateCalibrationConfig("DetectorHorizontalADToPositionSlope", param); ConfigurationManager::Instance()->UpdateCalibrationConfig("DetectorHorizontalADToPositionIntercept", param); }