File indexing completed on 2025-04-19 09:09:41
0001 #ifndef Analysis_Observables_Multiplicity_H
0002 #define Analysis_Observables_Multiplicity_H
0003
0004 #include "AddOns/Analysis/Observables/Primitive_Observable_Base.H"
0005 #include "AddOns/Analysis/Observables/Normalized_Observable.H"
0006
0007 namespace ANALYSIS {
0008
0009 class Multiplicity : public Primitive_Observable_Base {
0010 private:
0011 std::string m_reflist;
0012 public:
0013 Multiplicity(int type,double xmin,double xmax,int nbins,
0014 const std::string & listname=std::string(""),
0015 const std::string & reflist=std::string(""));
0016
0017 void Evaluate(const ATOOLS::Particle_List & pl, double weight, double ncount);
0018 void EvaluateNLOcontrib(double weight, double ncount);
0019 void EvaluateNLOevt();
0020 Primitive_Observable_Base * Copy() const;
0021
0022 };
0023
0024 class InclMultiplicity : public Primitive_Observable_Base {
0025 private:
0026 std::string m_reflist;
0027 public:
0028 InclMultiplicity(int type,double xmin,double xmax,int nbins,
0029 const std::string & listname=std::string(""),
0030 const std::string & reflist=std::string(""));
0031
0032 void Evaluate(const ATOOLS::Particle_List & pl, double weight, double ncount);
0033 void EvaluateNLOcontrib(double weight, double ncount);
0034 void EvaluateNLOevt();
0035 Primitive_Observable_Base * Copy() const;
0036
0037 };
0038
0039 class Hadron_Multiplicities : public Normalized_Observable {
0040 public:
0041 Hadron_Multiplicities(int type,double xmin,double xmax,int nbins,
0042 const std::string & listname=std::string(""),
0043 const std::string & reflist=std::string(""));
0044
0045 void Evaluate(const ATOOLS::Particle_List & pl, double weight, double ncount);
0046 Primitive_Observable_Base * Copy() const;
0047
0048 };
0049 }
0050
0051 #endif