diff --git a/Source/Program/Common/Misc/FileAndFolderManager.Datatypes.cs b/Source/Program/Common/Misc/FileAndFolderManager.Datatypes.cs
index bf4a78c..04f00f8 100644
--- a/Source/Program/Common/Misc/FileAndFolderManager.Datatypes.cs
+++ b/Source/Program/Common/Misc/FileAndFolderManager.Datatypes.cs
@@ -33,9 +33,6 @@ namespace ProgramLib
// List data folder + its subfolders
DATA,
DATA_TEMP,
-
- // List app folder + its folders
- APP
}
public enum Files
diff --git a/Source/Program/Common/Misc/FileAndFolderManager.cs b/Source/Program/Common/Misc/FileAndFolderManager.cs
index ffdc1e0..45e1c2b 100644
--- a/Source/Program/Common/Misc/FileAndFolderManager.cs
+++ b/Source/Program/Common/Misc/FileAndFolderManager.cs
@@ -15,13 +15,11 @@ GOVERNMENT.
UNPUBLISHED WORK - COPYRIGHT RAYTHEON COMPANY.
-------------------------------------------------------------------------*/
+using Raytheon.Common;
using System;
using System.Collections.Generic;
using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Raytheon.Common;
+using System.Reflection;
namespace ProgramLib
{
@@ -44,9 +42,9 @@ namespace ProgramLib
{
_programConfig = programConfig;
- buildFolders();
- createFolders();
- buildFiles();
+ ConstructFolderPaths();
+ CreateFolders();
+ ConstructFilePaths();
}
///
@@ -54,16 +52,18 @@ namespace ProgramLib
///
///
///
- private void buildFolders()
+ private void ConstructFolderPaths()
{
- string dataBasePath = _programConfig.ReadValue(ProgramConfigIni.GENERAL.ToString(), ProgramConfigIni.DATA_BASE_PATH.ToString(), "NOT SET");
- foldersDict[Folders.DATA] = dataBasePath;
+ string assemblyFolder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
+
+ string dataRootPath = _programConfig.ReadValue(ProgramConfigIni.GENERAL.ToString(), ProgramConfigIni.DATA_BASE_PATH.ToString(), "NOT SET");
+ if (!Path.IsPathRooted(dataRootPath))
+ dataRootPath = Path.Combine(assemblyFolder, dataRootPath);
+
+ foldersDict[Folders.DATA] = Path.GetFullPath(dataRootPath);
string val = _programConfig.ReadValue(ProgramConfigIni.GENERAL.ToString(), ProgramConfigIni.DATA_TEMP_PATH.ToString(), "NOT SET");
- foldersDict[Folders.DATA_TEMP] = Path.Combine(dataBasePath, val);
-
- string appBasePath = _programConfig.ReadValue(ProgramConfigIni.GENERAL.ToString(), ProgramConfigIni.APP_BASE_PATH.ToString(), "NOT SET");
- foldersDict[Folders.APP] = dataBasePath;
+ foldersDict[Folders.DATA_TEMP] = Path.Combine(dataRootPath, val);
}
///
@@ -71,7 +71,7 @@ namespace ProgramLib
///
///
///
- private void createFolders()
+ private void CreateFolders()
{
Directory.CreateDirectory(foldersDict[Folders.DATA_TEMP]);
}
@@ -81,7 +81,7 @@ namespace ProgramLib
///
///
///
- private void buildFiles()
+ private void ConstructFilePaths()
{
string val = _programConfig.ReadValue(ProgramConfigIni.GENERAL.ToString(), ProgramConfigIni.POWER_SUPPLY_SELF_TEST_DATETIME.ToString(), "NOT SET");
filesDict[Files.POWER_SUPPLY_SELF_TEST_DATETIME] = Path.Combine(foldersDict[Folders.DATA_TEMP], val);
diff --git a/Source/Program/DataDef/PowerSupplySharedData.cs b/Source/Program/DataDef/PowerSupplySharedData.cs
index a77cd50..46db319 100644
--- a/Source/Program/DataDef/PowerSupplySharedData.cs
+++ b/Source/Program/DataDef/PowerSupplySharedData.cs
@@ -59,12 +59,13 @@ namespace ProgramLib
lock (syncObjDict[moduleName])
{
- if (!_powerSupplyDataDict.ContainsKey(moduleName))
+ PowerSupplyData data = null;
+ if (_powerSupplyDataDict.ContainsKey(moduleName))
{
- throw new Exception($"{moduleName} is invalid");
+ data = _powerSupplyDataDict[moduleName];
}
- return _powerSupplyDataDict[moduleName];
+ return data;
}
}
diff --git a/Source/Program/ProgramConfigFile/config.ini b/Source/Program/ProgramConfigFile/config.ini
index 39f0483..d79781b 100644
--- a/Source/Program/ProgramConfigFile/config.ini
+++ b/Source/Program/ProgramConfigFile/config.ini
@@ -1,11 +1,8 @@
[GENERAL]
; specify data folder and all subfolders in it
-DATA_BASE_PATH = C:\NGSRI\Data
+DATA_BASE_PATH = .\Output
DATA_TEMP_PATH = Temp
-; specify app folder and all subfolders in it
-APP_BASE_PATH = C:\NGSRI\App
-
; Log names
POWER_SUPPLY_SELF_TEST_DATETIME = power_supply_self_test_datetime.xml
diff --git a/Source/Program/Threads/PowerSupplyUpdateThread.cs b/Source/Program/Threads/PowerSupplyUpdateThread.cs
index 5b5cc38..15797a2 100644
--- a/Source/Program/Threads/PowerSupplyUpdateThread.cs
+++ b/Source/Program/Threads/PowerSupplyUpdateThread.cs
@@ -131,7 +131,6 @@ namespace ProgramLib
EventGroup eventGroup = new EventGroup(eventDict);
- Random rnd = new Random();
while (true)
{
Events id = eventGroup.WaitAny(pollRateMs);
@@ -140,7 +139,7 @@ namespace ProgramLib
{
PowerSupplyData data = Program.Instance()._powerSupplySharedData.GetData(PowerSupplyConstants.POWER_DEVICE.STE_PVM_5V.ToString());
- if (data._initialized)
+ if (data != null && data._initialized)
{
_powerModuleToPowerDataModelDict["UUT_P20V"].ActualVoltage = data._voltage.ToString("0.00");
_powerModuleToPowerDataModelDict["UUT_P20V"].ExpectedVoltage = data._powerSupplyModuleInfo.voltageSetpoint_.ToString("0.00");
diff --git a/Source/TestStand/power_on.seq b/Source/TestStand/power_on.seq
index 3e6a31e..ac6efb4 100644
Binary files a/Source/TestStand/power_on.seq and b/Source/TestStand/power_on.seq differ