ATLAS Offline Software
Loading...
Searching...
No Matches
mergeProphecy4f.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4#include "Prophecy4fMerger.h"
5#include <iostream>
7
8using namespace asg::msgUserCode;
9
10
11int main(int argc, char*argv[]){
12
13 if(argc<5){
14 ANA_MSG_INFO(" Prophecy4fMerger: merge Powheg and Prophecy LHE files! ");
15 ANA_MSG_INFO(" Usage: ./Prophecy4fMerger [Options]");
16 ANA_MSG_INFO(" Nedeed options:");
17 ANA_MSG_INFO(" --inPowheg [Powheg lhe file]");
18 ANA_MSG_INFO(" --inProphecy4e [Prophecy4f lhe file with 4e decays]");
19 ANA_MSG_INFO(" --inProphecy4mu [Prophecy4f lhe file with 4mu decays]");
20 ANA_MSG_INFO(" --inProphecy2e2mu [Prophecy4f lhe file with 2e2mu decays]");
21 ANA_MSG_INFO(" --outLHE [Outupt lhe file]");
22 ANA_MSG_INFO(" --randomSeed [the seed]");
23 ANA_MSG_INFO(" Additional options:");
24 ANA_MSG_INFO(" --debug [Enable debug mode]");
25 return 0;
26 }
27 std::string powheg, prophecy4e, prophecy4mu, prophecy2e2mu, out;
28 unsigned long long seed = 0;
29 bool debug=false;
30 for(int a=1; a<argc; a++){
31 if(!strcmp(argv[a],"--inPowheg")){
32 powheg = argv[a+1];
33 }
34 else if(!strcmp(argv[a],"--inProphecy4e")){
35 prophecy4e = argv[a+1];
36 }
37 else if(!strcmp(argv[a],"--inProphecy4mu")){
38 prophecy4mu = argv[a+1];
39 }
40 else if(!strcmp(argv[a],"--inProphecy2e2mu")){
41 prophecy2e2mu = argv[a+1];
42 }
43 else if(!strcmp(argv[a],"--outLHE")){
44 out = argv[a+1];
45 }
46 else if(!strcmp(argv[a],"--randomSeed")){
47 seed = std::stoull(argv[a+1]);
48 }
49 else if(!strcmp(argv[a],"--debug")){
50 debug = true;
51 }
52 }
53
54 Prophecy4fMerger merger;
55 merger.setIO(powheg, prophecy4e, prophecy4mu, prophecy2e2mu, out, debug);
56 merger.setRandomSeed(seed);
57 merger.merge();
58
59 return 0;
60
61}
macros for messaging and checking status codes
#define ANA_MSG_INFO(xmsg)
Macro printing info messages.
static Double_t a
const bool debug
void setIO(const std::string &powheg, const std::string &prophecy4e, const std::string &prophecy4mu, const std::string &prophecy2e2mu, const std::string &outlhe, bool debug)
void setRandomSeed(unsigned long long seed)
int main()
Definition hello.cxx:18