herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
PerturbativeProcess.h
1 // -*- C++ -*-
2 //
3 // PerturbativeProcess.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4 // Copyright (C) 2002-2019 The Herwig Collaboration
5 //
6 // Herwig is licenced under version 3 of the GPL, see COPYING for details.
7 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
8 //
9 #ifndef HERWIG_PerturbativeProcess_H
10 #define HERWIG_PerturbativeProcess_H
11 
12 #include "ThePEG/Config/ThePEG.h"
13 #include "ThePEG/EventRecord/Particle.h"
14 #include "ThePEG/EventRecord/SubProcess.h"
15 #include "ThePEG/Handlers/XComb.h"
16 #include "ThePEG/Config/Pointers.h"
17 #include "PerturbativeProcess.fh"
18 
19 namespace Herwig {
20 using namespace ThePEG;
21 
25 class PerturbativeProcess : public Base {
26 
27 public:
28 
32  vector<pair<PPtr,tPerturbativeProcessPtr> > & incoming() {
33  return incoming_;
34  }
35 
39  vector<pair<PPtr, PerturbativeProcessPtr> > & outgoing() {
40  return outgoing_;
41  }
42 
43 protected:
44 
48  vector<pair<PPtr,tPerturbativeProcessPtr> > incoming_;
49 
50  /*
51  * The outgoing particles
52  */
53  vector<pair<PPtr,PerturbativeProcessPtr> > outgoing_;
54 
59 
64 };
65 
69 typedef multimap<Energy,PerturbativeProcessPtr,std::greater<Energy> > DecayProcessMap;
70 
71 }
72 
73 #endif
ThePEG::Ptr< XComb >::pointer XCombPtr
vector< pair< PPtr, tPerturbativeProcessPtr > > & incoming()
The incoming particles.
tSubProPtr subprocess_
The subprocess.
Simple struct for hard processes and decays.
vector< pair< PPtr, PerturbativeProcessPtr > > & outgoing()
The outgoing particles.
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
vector< pair< PPtr, tPerturbativeProcessPtr > > incoming_
The incoming particles.
-*- C++ -*-
multimap< Energy, PerturbativeProcessPtr, std::greater< Energy > > DecayProcessMap
Typedef for map of PerturbativeProcess for decays.