From 2ac9e3fa9436cba693bd73d15d78d8e24828aba8 Mon Sep 17 00:00:00 2001 From: matta <matta@npt> Date: Mon, 10 May 2010 00:31:06 +0000 Subject: [PATCH] * Fixing sever bug in NPS Target.cc - Pressure and some other critical element where read as int instead of float, occuring some problem for decimal value given by user --- NPSimulation/src/Target.cc | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/NPSimulation/src/Target.cc b/NPSimulation/src/Target.cc index f1cd88468..4d7973141 100644 --- a/NPSimulation/src/Target.cc +++ b/NPSimulation/src/Target.cc @@ -282,21 +282,21 @@ void Target::ReadConfiguration(string Path) else if (DataBuffer.compare(0, 2, "X=") == 0) { check_X = true ; ConfigFile >> DataBuffer; - m_TargetX = atoi(DataBuffer.c_str()) * mm; + m_TargetX = atof(DataBuffer.c_str()) * mm; cout << "Target coordinate (mm): ( " << m_TargetX / mm << " ; "; } else if (DataBuffer.compare(0, 2, "Y=") == 0) { check_Y = true ; ConfigFile >> DataBuffer; - m_TargetY = atoi(DataBuffer.c_str()) * mm; + m_TargetY = atof(DataBuffer.c_str()) * mm; cout << m_TargetY / mm << " ; "; } else if (DataBuffer.compare(0, 2, "Z=") == 0) { check_Z = true ; ConfigFile >> DataBuffer; - m_TargetZ = atoi(DataBuffer.c_str()) * mm; + m_TargetZ = atof(DataBuffer.c_str()) * mm; cout << m_TargetZ / mm << " )" << endl ; } @@ -343,13 +343,13 @@ void Target::ReadConfiguration(string Path) else if (DataBuffer.compare(0, 12, "TEMPERATURE=") == 0) { check_Temperature = true ; ConfigFile >> DataBuffer; - m_TargetTemperature = atoi(DataBuffer.c_str()); + m_TargetTemperature = atof(DataBuffer.c_str()); } else if (DataBuffer.compare(0, 9, "PRESSURE=") == 0) { check_Pressure = true ; ConfigFile >> DataBuffer; - m_TargetPressure = atoi(DataBuffer.c_str()); + m_TargetPressure = atof(DataBuffer.c_str()); } else if (DataBuffer.compare(0, 9, "MATERIAL=") == 0) { @@ -362,7 +362,7 @@ void Target::ReadConfiguration(string Path) else if (DataBuffer.compare(0, 17, "WINDOWSTHICKNESS=") == 0) { check_WinThickness = true ; ConfigFile >> DataBuffer; - m_WindowsThickness = atoi(DataBuffer.c_str()) * micrometer; + m_WindowsThickness = atof(DataBuffer.c_str()) * micrometer; cout << "Windows Thickness: " << m_WindowsThickness / micrometer << "um" << endl ; } @@ -376,21 +376,21 @@ void Target::ReadConfiguration(string Path) else if (DataBuffer.compare(0, 2, "X=") == 0) { check_X = true ; ConfigFile >> DataBuffer; - m_TargetX = atoi(DataBuffer.c_str()) * mm; + m_TargetX = atof(DataBuffer.c_str()) * mm; cout << "Target coordinate (mm): ( " << m_TargetX / mm << " ; "; } else if (DataBuffer.compare(0, 2, "Y=") == 0) { check_Y = true ; ConfigFile >> DataBuffer; - m_TargetY = atoi(DataBuffer.c_str()) * mm; + m_TargetY = atof(DataBuffer.c_str()) * mm; cout << m_TargetY / mm << " ; "; } else if (DataBuffer.compare(0, 2, "Z=") == 0) { check_Z = true ; ConfigFile >> DataBuffer; - m_TargetZ = atoi(DataBuffer.c_str()) * mm; + m_TargetZ = atof(DataBuffer.c_str()) * mm; cout << m_TargetZ / mm << " )" << endl ; } -- GitLab