7 #include <HepMC/GenEvent.h>
8 #include <HepMC/IO_BaseClass.h>
9 #include <HepMC/IO_GenEvent.h>
13 #include <boost/version.hpp>
14 #if (__GNUC__ == 4 && __GNUC_MINOR__ == 8 && (BOOST_VERSION == 106000 || BOOST_VERSION == 106700 || BOOST_VERSION == 107000))
15 #pragma GCC diagnostic ignored "-Wshadow"
16 #pragma GCC diagnostic ignored "-Wunused-parameter"
17 #pragma message "ignoring bogus gcc warning in boost header ptree.hpp"
18 #include <boost/property_tree/ptree.hpp>
19 #pragma GCC diagnostic warning "-Wshadow"
20 #pragma GCC diagnostic warning "-Wunused-parameter"
22 #include <boost/property_tree/ptree.hpp>
25 #include <boost/operators.hpp>
26 #include <boost/property_tree/xml_parser.hpp>
34 class HepRandomEngine;
41 using namespace boost::property_tree;
54 read_xml(config_file,
pt);
56 long randomSeed =
pt.get(
"FLOWAFTERBURNER.RANDOM.SEED", 11793);
59 std::string input =
pt.get(
"FLOWAFTERBURNER.INPUT",
"sHijing.dat");
60 std::string output =
pt.get(
"FLOWAFTERBURNER.OUTPUT",
"flowAfterburner.dat");
62 float mineta =
pt.get(
"FLOWAFTERBURNER.CUTS.MINETA", -5.0);
63 float maxeta =
pt.get(
"FLOWAFTERBURNER.CUTS.MAXETA", 5.0);
65 float minpt =
pt.get(
"FLOWAFTERBURNER.CUTS.MINPT", 0.0);
66 float maxpt =
pt.get(
"FLOWAFTERBURNER.CUTS.MAXPT", 100.0);
68 std::string algorithmName =
pt.get(
"FLOWAFTERBURNER.ALGORITHM",
"MINBIAS");
71 HepMC::IO_GenEvent ascii_in(input.c_str(),
std::ios::in);
72 HepMC::IO_GenEvent ascii_out(output.c_str(), std::ios::out);
75 while (ascii_in >> evt)
77 flowAfterburner(evt, engine, algorithmName, mineta, maxeta, minpt, maxpt);