#ifndef CSVREADER_H
#define CSVREADER_H

#include <string>
#include <vector>
#include <fstream>

/*
 * Ließt eine CSV Datei
 */
class CSVReader
{
private:

    std::ifstream stream; // Der Stream, mit dem die Datei gelesen wird
    int byteCount; // Die Anzahl der Bytes in der Datei

public:

    // Erstellt den Leser
    //  path: Der Pfad der CSV Datei
    CSVReader(std::string path);

    // Gibt die nächste Zeile der CSV Datei zurück
    std::vector<std::string>getNextRow();

    // Gibt true zurück, falls es noch eine Zeile gibt
    bool                    hasNext() const;

    // Gibt den Fortschritt des lesens in Prozent zurück
    int                     getProgress();
};

#endif // CSVREADER_H
