#pragma once #include "Parsing/IParserLineStream.h" #include "TechsetDefinition.h" #include "Utils/ClassUtils.h" #include #include namespace techset { class TechsetFileReader { std::string m_file_name; const char** m_valid_technique_type_names; size_t m_valid_technique_type_name_count; std::unique_ptr m_base_stream; std::unique_ptr m_comment_proxy; public: TechsetFileReader(std::istream& stream, std::string fileName, const char** validTechniqueTypeNames, size_t validTechniqueTypeNameCount); _NODISCARD std::unique_ptr ReadTechsetDefinition() const; }; } // namespace techset