#ifndef CONFIGURATION_H_ #define CONFIGURATION_H_ #include #include #include #ifndef CPPCHECK #include #endif class Configuration; class ConfigurationManagement { public: explicit ConfigurationManagement(String FilePath); virtual ~ConfigurationManagement(); std::shared_ptr readConfiguration(); void writeConfiguration(std::shared_ptr conf); private: virtual std::shared_ptr readProjectConfiguration(DynamicJsonDocument &data) = 0; virtual void writeProjectConfiguration(std::shared_ptr conf, DynamicJsonDocument &data) = 0; const String mFilePath; }; #endif