Add menu defines for feature levels

This commit is contained in:
Jan
2021-10-31 16:45:49 +01:00
parent 9816d01ac2
commit e79376eb3e
3 changed files with 42 additions and 16 deletions

View File

@ -13,16 +13,19 @@ public:
using include_callback_t = std::function<std::unique_ptr<std::istream>(const std::string& filename)>;
private:
std::string m_file_name;
const MenuFeatureLevel m_feature_level;
const std::string m_file_name;
IParserLineStream* m_stream;
std::vector<std::unique_ptr<IParserLineStream>> m_open_streams;
bool OpenBaseStream(std::istream& stream, include_callback_t includeCallback);
void SetupDefinesProxy();
void SetupStreamProxies();
public:
MenuFileReader(std::istream& stream, std::string fileName);
MenuFileReader(std::istream& stream, std::string fileName, include_callback_t includeCallback);
MenuFileReader(std::istream& stream, std::string fileName, MenuFeatureLevel featureLevel);
MenuFileReader(std::istream& stream, std::string fileName, MenuFeatureLevel featureLevel, include_callback_t includeCallback);
bool ReadMenuFile(MenuFeatureLevel featureLevel);
bool ReadMenuFile();
};