HepMC3 event record library
testIO8.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"
11#include "HepMC3TestUtils.h"
12using namespace HepMC3;
13int main()
14{
15 ReaderAsciiHepMC2 inputA("inputIO8.hepmc");
16 if(inputA.failed()) return 1;
17 WriterAscii outputA("frominputIO8.hepmc");
18 if(outputA.failed()) return 2;
19 auto optionsA = outputA.get_options();
20 optionsA["float_printf_specifier"] = "g";
21 outputA.set_options(optionsA);
22 while( !inputA.failed() )
23 {
24 GenEvent evt(Units::GEV,Units::MM);
25 inputA.read_event(evt);
26 if( inputA.failed() ) {
27 printf("End of file reached. Exit.\n");
28 break;
29 }
30 outputA.write_event(evt);
31 evt.clear();
32 }
33 inputA.close();
34 outputA.close();
35
36
37 ReaderAscii inputB("frominputIO8.hepmc");
38 if(inputB.failed()) return 3;
39 WriterAsciiHepMC2 outputB("fromfrominputIO8.hepmc");
40 if(outputB.failed()) return 4;
41 auto optionsB = outputB.get_options();
42 optionsB["float_printf_specifier"] = "g";
43 outputB.set_options(optionsB);
44 while( !inputB.failed() )
45 {
46 GenEvent evt(Units::GEV,Units::MM);
47 inputB.read_event(evt);
48 if( inputB.failed() ) {
49 printf("End of file reached. Exit.\n");
50 break;
51 }
52 outputB.write_event(evt);
53 evt.clear();
54 }
55 inputB.close();
56 outputB.close();
57 return COMPARE_ASCII_FILES("fromfrominputIO8.hepmc","inputIO8.hepmc");
58}
Definition of class GenEvent.
Definition of class ReaderAsciiHepMC2.
Definition of class ReaderAscii.
Definition of class WriterAsciiHepMC2.
Definition of class WriterAscii.
Stores event-related information.
Definition: GenEvent.h:41
Parser for HepMC2 I/O files.
GenEvent I/O parsing for structured text files.
Definition: ReaderAscii.h:29
GenEvent I/O serialization for structured text files.
GenEvent I/O serialization for structured text files.
Definition: WriterAscii.h:25
HepMC3 main namespace.