39 ReaderAscii(std::shared_ptr<std::istream> s_stream);
44 bool skip(
const int)
override;
55 void close()
override;
60 static std::string unescape(
const std::string& s);
70 std::pair<int,int> parse_event_information(
const char *buf);
77 bool parse_weight_values(
const char *buf);
84 bool parse_units(
const char *buf);
90 bool parse_pdf_info(
const char *buf);
96 bool parse_heavy_ion(
const char *buf);
102 bool parse_cross_section(
const char *buf);
109 bool parse_vertex_information(
const char *buf);
115 bool parse_particle_information(
const char *buf);
121 bool parse_attribute(
const char *buf);
127 bool parse_run_attribute(
const char *buf);
134 bool parse_weight_names(
const char *buf);
141 bool parse_tool(
const char *buf);
147 std::ifstream m_file;
148 std::shared_ptr<std::istream> m_shared_stream =
nullptr;
149 std::istream* m_stream =
nullptr;
153 std::map<int, std::pair< std::set<int>, std::set<int> > > m_io_explicit;
155 std::unordered_map<int, std::pair< std::set<int>, std::set<int> > > m_io_implicit;
157 std::vector<int> m_io_implicit_ids;
159 std::set<int> m_io_explicit_ids;