HepMC3 event record library
testIO3.cc
1 // -*- C++ -*-
2 //
3 // This file is part of HepMC
4 // Copyright (C) 2014-2019 The HepMC collaboration (see AUTHORS for details)
5 //
6 #include "HepMC3/GenEvent.h"
7 #include "HepMC3/ReaderAscii.h"
8 #include "HepMC3/WriterAscii.h"
9 #include "HepMC3/ReaderHEPEVT.h"
10 #include "HepMC3/WriterHEPEVT.h"
11 #include "HepMC3TestUtils.h"
12 using namespace HepMC3;
13 int main()
14 {
15  ReaderHEPEVT inputA("inputIO3.hepevt");
16  if(inputA.failed()) return 1;
17  WriterAscii outputA("frominputIO3.hepmc");
18  if(outputA.failed()) return 2;
19  while( !inputA.failed() )
20  {
21  GenEvent evt(Units::GEV,Units::MM);
22  inputA.read_event(evt);
23  if( inputA.failed() ) {
24  printf("End of file reached. Exit.\n");
25  break;
26  }
27  outputA.write_event(evt);
28  evt.clear();
29  }
30  inputA.close();
31  outputA.close();
32 
33  ReaderAscii inputB("frominputIO3.hepmc");
34  if(inputB.failed()) return 3;
35  WriterHEPEVT outputB("fromfrominputIO3.hepevt");
36  if(outputB.failed()) return 4;
37  while( !inputB.failed() )
38  {
39  GenEvent evt(Units::GEV,Units::MM);
40  inputB.read_event(evt);
41  if( inputB.failed() ) {
42  printf("End of file reached. Exit.\n");
43  break;
44  }
45  outputB.write_event(evt);
46  evt.clear();
47  }
48  inputB.close();
49  outputB.close();
50  return COMPARE_ASCII_FILES("fromfrominputIO3.hepevt","inputIO3.hepevt");
51 }
Definition of class WriterHEPEVT.
Definition of class ReaderHEPEVT.
GenEvent I/O parsing for structured text files.
Definition: ReaderAscii.h:29
Definition of class WriterAscii.
GenEvent I/O parsing and serialization for HEPEVT files.
Definition: ReaderHEPEVT.h:32
GenEvent I/O serialization for HEPEVT files.
Definition: WriterHEPEVT.h:27
Stores event-related information.
Definition: GenEvent.h:41
Definition of class ReaderAscii.
int main(int argc, char **argv)
Definition of class GenEvent.
GenEvent I/O serialization for structured text files.
Definition: WriterAscii.h:25