OpenEV
Extending OpenCV to event-based vision
Loading...
Searching...
No Matches
plain-text-reader.hpp
Go to the documentation of this file.
1
6#ifndef OPENEV_READERS_PLAIN_TEXT_READER_HPP
7#define OPENEV_READERS_PLAIN_TEXT_READER_HPP
8
10#include "openev/readers/abstract-reader.hpp"
11#include <fstream>
12#include <regex>
13#include <string>
14
15namespace ev {
16
17enum PlainTextReaderColumns : uint8_t {
18 TXYP,
19 XYTP,
20 PTXY,
21 PXYT
22};
23
28public:
34 explicit PlainTextReader(const std::string &filename, const PlainTextReaderColumns columns = PlainTextReaderColumns::TXYP, const std::string &separator = " ");
35
37 ~PlainTextReader() override;
38 PlainTextReader(const PlainTextReader &) = delete;
39 PlainTextReader(PlainTextReader &&) noexcept = delete;
40 PlainTextReader &operator=(const PlainTextReader &) = delete;
41 PlainTextReader &operator=(PlainTextReader &&) noexcept = delete;
44private:
45 std::fstream file_;
46 std::regex separator_;
47 std::function<void(std::stringstream &, ev::Event &)> parser_;
48 bool replace_;
49 void reset_() override;
50 bool read_(Event &e) override;
51};
52
53} // namespace ev
54
55#endif // OPENEV_READERS_PLAIN_TEXT_READER_HPP
This is an auxiliary class. This class cannot be instanced.
Definition abstract-reader.hpp:20
This class extends cv::Point_<T> for event data. For more information, please refer here.
Definition types.hpp:60
This class extends AbstractReader_ to read dataset in plain text format.
Definition plain-text-reader.hpp:27
PlainTextReader(const std::string &filename, const PlainTextReaderColumns columns=PlainTextReaderColumns::TXYP, const std::string &separator=" ")
Definition plain-text-reader.cpp:10
Basic event-based vision structures based on OpenCV components.