Added a handy way to retrieve the configuration of a config file without having to instantiate a parser - but I do not like it - might be removed in the future

This commit is contained in:
anschrammh 2019-11-17 19:31:06 +01:00
parent ef2f986581
commit e7cf2fa020
2 changed files with 17 additions and 3 deletions

View File

@ -54,3 +54,9 @@ boolean SDCardManager::isMounted()
{
return _mounted;
}
CFGDictionary<CFGParameterValue> *SDCardManager::getCFGFile(const char *cfgFile)
{
CFGFileParser cfgFileParser(*this, cfgFile);
return (CFGDictionary<CFGParameterValue> *) cfgFileParser.parseFile();
}

View File

@ -2,21 +2,29 @@
#define SDCARDMANAGER_H
#include <SD.h>
#include "definition.h"
#include "CFGDictionary.h"
#include "CFGParameterValue.h"
#include "CFGFileParser.h"
class SDCardManager : public SDClass
{
friend class SAB;
public:
SDCardManager(const Pin csPin, SPISettings cfg);
double getSize(const SizeUnit sizeUnit = GBYTE);
boolean mountSD();
void unMountSD();
boolean isMounted();
/*
* Quick way to retrieve the keys and values of a config file.
* If you need to performe other actions on the file, you will have to use the CFGFileParser object instead
* Remember to free the returned object ie : delete
*/
CFGDictionary<CFGParameterValue> *getCFGFile(const char *cfgFile);
protected:
SDCardManager();
private:
const Pin _csPin;
SPISettings _spiCfg;