Rivet 3.1.9
Particle.fhh
1// -*- C++ -*-
2#ifndef RIVET_Particle_FHH
3#define RIVET_Particle_FHH
4
5#include "Rivet/Tools/RivetSTL.hh"
6// #include "Rivet/Tools/RivetFastJet.hh"
7// #include "Rivet/Math/Vectors.hh"
8
9namespace Rivet {
10
11
12 /// @name Particle declarations
13 //@{
14
15 // Forward declarations
16 class Particle;
17 class Particles;
18
19
20 /// @name Particle function/functor declarations
21 //@{
22
23 /// std::function instantiation for functors taking a Particle and returning a bool
24 using ParticleSelector = function<bool(const Particle&)>;
25
26 /// std::function instantiation for functors taking two Particles and returning a bool
27 using ParticleSorter = function<bool(const Particle&, const Particle&)>;
28
29 //@}
30
31
32 /// @name PdgId declarations
33 //@{
34
35 /// Typedefs for a PDG ID code.
36 typedef int PdgId;
37 //typedef PdgId PID; //< can't do this, because it's also a (sub)namespace
38
39 /// Typedef for a pair of particle names.
40 typedef std::pair<PdgId, PdgId> PdgIdPair;
41
42 //@}
43
44
45}
46
47#endif