Warning, /include/Rivet/Particle.fhh is written in an unsupported language. File is not indexed.
0001 // -*- C++ -*-
0002 #ifndef RIVET_Particle_FHH
0003 #define RIVET_Particle_FHH
0004
0005 #include "Rivet/Tools/RivetSTL.hh"
0006
0007 namespace Rivet {
0008
0009
0010 /// @name Particle declarations
0011 /// @{
0012
0013 // Forward declarations
0014 class Particle;
0015 class Particles;
0016
0017
0018 /// @name Particle function/functor declarations
0019 /// @{
0020
0021 /// std::function instantiation for functors taking a Particle and returning a bool
0022 using ParticleSelector = function<bool(const Particle&)>;
0023
0024 /// std::function instantiation for functors taking two Particles and returning a bool
0025 using ParticleSorter = function<bool(const Particle&, const Particle&)>;
0026
0027 /// @}
0028
0029
0030 /// @name PdgId declarations
0031 /// @{
0032
0033 /// Typedefs for a PDG ID code.
0034 typedef int PdgId;
0035 //typedef PdgId PID; //< can't do this, because it's also a (sub)namespace
0036
0037 /// Typedef for a pair of particle names.
0038 typedef std::pair<PdgId, PdgId> PdgIdPair;
0039
0040 /// @}
0041
0042
0043 /// Enum to enable different orderings for particles
0044 enum class ObjOrdering { ENERGY, ETA, ET };
0045
0046
0047 }
0048
0049 #endif