corrections and tests
This commit is contained in:
50
mission/memory/NVMParameterBase.cpp
Normal file
50
mission/memory/NVMParameterBase.cpp
Normal file
@ -0,0 +1,50 @@
|
||||
#include "NVMParameterBase.h"
|
||||
#include "fsfw/memory/HasFileSystemIF.h"
|
||||
#include "fsfw/serviceinterface/ServiceInterface.h"
|
||||
|
||||
#include <fstream>
|
||||
|
||||
NVMParameterBase::NVMParameterBase(std::string fullName): fullName(fullName) {
|
||||
}
|
||||
|
||||
ReturnValue_t NVMParameterBase::readJsonFile() {
|
||||
if(std::filesystem::exists(fullName)) {
|
||||
// Read JSON file content into object
|
||||
std::ifstream i(fullName);
|
||||
i >> json;
|
||||
return HasReturnvaluesIF::RETURN_OK;
|
||||
}
|
||||
return HasFileSystemIF::FILE_DOES_NOT_EXIST;
|
||||
}
|
||||
|
||||
ReturnValue_t NVMParameterBase::writeJsonFile() {
|
||||
std::ofstream o(fullName);
|
||||
o << std::setw(4) << json;
|
||||
return HasReturnvaluesIF::RETURN_OK;
|
||||
}
|
||||
|
||||
void NVMParameterBase::setFullName(std::string fullName) {
|
||||
this->fullName = fullName;
|
||||
}
|
||||
|
||||
std::string NVMParameterBase::getFullName() const {
|
||||
return fullName;
|
||||
}
|
||||
|
||||
bool NVMParameterBase::getJsonFileExists() {
|
||||
return std::filesystem::exists(fullName);
|
||||
}
|
||||
|
||||
void NVMParameterBase::printKeys() const {
|
||||
sif::info << "Printing keys for JSON file " << fullName << std::endl;
|
||||
for(const auto& key: keys) {
|
||||
sif::info << key << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
void NVMParameterBase::print() const {
|
||||
sif::info << "Printing JSON file " << fullName << std::endl;
|
||||
for(const auto& key: keys) {
|
||||
sif::info << key << ": " << json[key] << std::endl;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user