File indexing completed on 2025-05-12 09:05:02
0001
0002 #ifndef RIVET_GENERATEDPERCENTILEPROJECTION_HH
0003 #define RIVET_GENERATEDPERCENTILEPROJECTION_HH
0004
0005 #include "Rivet/Projections/SingleValueProjection.hh"
0006 #include "Rivet/Projections/HepMCHeavyIon.hh"
0007
0008 namespace Rivet {
0009
0010 class GeneratedPercentileProjection: public SingleValueProjection {
0011 public:
0012
0013 using SingleValueProjection::operator=;
0014
0015 GeneratedPercentileProjection() {
0016 setName("GeneratedPercentileProjection");
0017 declare(HepMCHeavyIon(), "HepMC");
0018 }
0019
0020
0021 RIVET_DEFAULT_PROJ_CLONE(GeneratedPercentileProjection);
0022
0023
0024 using Projection::operator =;
0025
0026
0027 protected:
0028
0029 void project(const Event& e) {
0030 clear();
0031 setValue(apply<HepMCHeavyIon>(e, "HepMC").centrality());
0032 }
0033
0034 CmpState compare(const Projection&) const {
0035 return CmpState::EQ;
0036 }
0037
0038 };
0039
0040 }
0041
0042 #endif