Rivet API documentation

Rivet 4.1.3
GammaGammaFinalState.hh
1// -*- C++ -*-
2#ifndef RIVET_GammaGammaFinalState_HH
3#define RIVET_GammaGammaFinalState_HH
4
5#include "Rivet/Projections/FinalState.hh"
6#include "Rivet/Projections/GammaGammaKinematics.hh"
7
8namespace Rivet {
9
10
14 class GammaGammaFinalState : public FinalState {
15 public:
16
21 GammaGammaFinalState(const FinalState& fs = FinalState(),
22 const GammaGammaKinematics& kinematicsp = GammaGammaKinematics()) {
23 setName("GammaGammaFinalState");
24 declare(fs, "FS");
25 declare(kinematicsp, "Kinematics");
26 }
27
31 : GammaGammaFinalState(FinalState(c), kinematicsp) { }
32
33 // /// @brief Constructor with default FinalState
34 // /// @note The GammaGammaKinematics has no parameters, hence explicitly passing it as an arg shouldn't be necessary.
35 // GammaGammaFinalState(const GammaGammaKinematics& kinematicsp=GammaGammaKinematics())
36 // : GammaGammaFinalState(FinalState(), kinematicsp)
37 // { }
38
39
41 RIVET_DEFAULT_PROJ_CLONE(GammaGammaFinalState);
42
44
45
47 using Projection::operator=;
48
49
50 protected:
51
53 void project(const Event& e);
54
56 CmpState compare(const Projection& p) const {
57 return mkNamedPCmp(p, "Kinematics") || mkNamedPCmp(p, "FS");
58 }
59 };
60
61
62}
63
64#endif
Representation of a HepMC event, and enabler of Projection caching.
Definition Event.hh:22
FinalState(const Cut &c=Cuts::OPEN)
Construction using Cuts object.
GammaGammaFinalState(const Cut &c, const GammaGammaKinematics &kinematicsp=GammaGammaKinematics())
Definition GammaGammaFinalState.hh:30
RIVET_DEFAULT_PROJ_CLONE(GammaGammaFinalState)
Clone on the heap.
void project(const Event &e)
Apply the projection on the supplied event.
CmpState compare(const Projection &p) const
Compare projections.
Definition GammaGammaFinalState.hh:56
Get the gamma gamma kinematic variables and relevant boosts for an event.
Definition GammaGammaKinematics.hh:15
const PROJ & declare(const PROJ &proj, const std::string &name) const
Register a contained projection (user-facing version).
Definition ProjectionApplier.hh:205
Base class for all Rivet projections.
Definition Projection.hh:29
void setName(const std::string &name)
Used by derived classes to set their name.
Definition Projection.hh:146
Cmp< Projection > mkNamedPCmp(const Projection &otherparent, const std::string &pname) const
double p(const ParticleBase &p)
Unbound function access to p.
Definition ParticleBaseUtils.hh:819
Definition LHCbCommon.hh:9