#ifndef ARFF_HPP #define ARFF_HPP #include #include namespace ARFF { void ParseArguments(int argc, char* argv[]); std::string GetDataFilename(void); void LogInfo(const std::string location, const std::string message); void LogError(const std::string location, const std::string message); struct AttributeType { public: std::string attribute; std::vector values; AttributeType(std::string attribute); void AddValue(std::string value); }; struct Instance { public: Instance(const int id, const int size); unsigned int id; std::vector values; }; class Arff { public: Arff() = default; void Read(std::string filename); private: std::string relation; std::vector attributeList; std::vector database; void AddAttribute(std::string line); void AddData(std::string line); void TestIntegrity(void); }; } #endif