CMS 3D CMS Logo

PuppiContainer.h
Go to the documentation of this file.
1 #ifndef COMMONTOOLS_PUPPI_PUPPICONTAINER_H_
2 #define COMMONTOOLS_PUPPI_PUPPICONTAINER_H_
3 
7 
9 public:
10  PuppiContainer(const edm::ParameterSet &iConfig);
12  void initialize(const std::vector<RecoObj> &iRecoObjects);
13  void setPUProxy(double const iPUProxy) { fPUProxy = iPUProxy; }
14 
15  std::vector<PuppiCandidate> const &pfParticles() const { return fPFParticles; }
16  std::vector<double> const &puppiWeights();
17  const std::vector<double> &puppiRawAlphas() { return fRawAlphas; }
18  const std::vector<double> &puppiAlphas() { return fVals; }
19  // const std::vector<double> puppiAlpha () {return fAlpha;}
20  const std::vector<double> &puppiAlphasMed() { return fAlphaMed; }
21  const std::vector<double> &puppiAlphasRMS() { return fAlphaRMS; }
22 
23  int puppiNAlgos() { return fNAlgos; }
24 
25 protected:
26  double goodVar(PuppiCandidate const &iPart, std::vector<PuppiCandidate> const &iParts, int iOpt, const double iRCone);
27  void getRMSAvg(int iOpt,
28  std::vector<PuppiCandidate> const &iConstits,
29  std::vector<PuppiCandidate> const &iParticles,
30  std::vector<PuppiCandidate> const &iChargeParticles);
31  void getRawAlphas(int iOpt,
32  std::vector<PuppiCandidate> const &iConstits,
33  std::vector<PuppiCandidate> const &iParticles,
34  std::vector<PuppiCandidate> const &iChargeParticles);
35  double getChi2FromdZ(double iDZ);
36  int getPuppiId(float iPt, float iEta);
37  double var_within_R(int iId,
38  const std::vector<PuppiCandidate> &particles,
39  const PuppiCandidate &centre,
40  const double R);
41 
43  const std::vector<RecoObj> *fRecoParticles;
44  std::vector<PuppiCandidate> fPFParticles;
45  std::vector<PuppiCandidate> fPFParticlesForVar;
46  std::vector<PuppiCandidate> fPFParticlesForVarChargedPV;
47  std::vector<double> fWeights;
48  std::vector<double> fVals;
49  std::vector<double> fRawAlphas;
50  std::vector<double> fAlphaMed;
51  std::vector<double> fAlphaRMS;
52 
53  bool fApplyCHS;
54  bool fInvert;
55  bool fUseExp;
56  double fNeutralMinPt;
57  double fNeutralSlope;
59  double fPtMaxPhotons;
63  int fNAlgos;
64  double fPUProxy;
65  std::vector<PuppiAlgo> fPuppiAlgo;
66 };
67 #endif
std::vector< PuppiCandidate > fPFParticlesForVar
double var_within_R(int iId, const std::vector< PuppiCandidate > &particles, const PuppiCandidate &centre, const double R)
double getChi2FromdZ(double iDZ)
std::vector< PuppiCandidate > fPFParticles
const std::vector< double > & puppiAlphasMed()
const std::vector< double > & puppiAlphas()
std::vector< double > fVals
double fPtMaxNeutralsStartSlope
double fEtaMaxPhotons
double fPtMaxNeutrals
void getRMSAvg(int iOpt, std::vector< PuppiCandidate > const &iConstits, std::vector< PuppiCandidate > const &iParticles, std::vector< PuppiCandidate > const &iChargeParticles)
double fNeutralSlope
void getRawAlphas(int iOpt, std::vector< PuppiCandidate > const &iConstits, std::vector< PuppiCandidate > const &iParticles, std::vector< PuppiCandidate > const &iChargeParticles)
std::vector< double > fRawAlphas
PuppiContainer(const edm::ParameterSet &iConfig)
std::vector< double > const & puppiWeights()
std::vector< double > fAlphaMed
double fPuppiWeightCut
int getPuppiId(float iPt, float iEta)
std::vector< PuppiCandidate > fPFParticlesForVarChargedPV
void setPUProxy(double const iPUProxy)
std::vector< PuppiCandidate > const & pfParticles() const
const std::vector< RecoObj > * fRecoParticles
double fPtMaxPhotons
const std::vector< double > & puppiAlphasRMS()
std::vector< double > fWeights
double goodVar(PuppiCandidate const &iPart, std::vector< PuppiCandidate > const &iParts, int iOpt, const double iRCone)
std::vector< double > fAlphaRMS
std::vector< PuppiAlgo > fPuppiAlgo
void initialize(const std::vector< RecoObj > &iRecoObjects)
double fNeutralMinPt
const std::vector< double > & puppiRawAlphas()