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);
11  ~PuppiContainer();
12  void initialize(const std::vector<RecoObj> &iRecoObjects);
13  void setNPV(int iNPV){ fNPV = iNPV; }
14 
15  std::vector<PuppiCandidate> const & pfParticles() const { return fPFParticles; }
16  std::vector<PuppiCandidate> const & pvParticles() const { return fChargedPV; }
17  std::vector<double> const & puppiWeights();
18  const std::vector<double> & puppiRawAlphas(){ return fRawAlphas; }
19  const std::vector<double> & puppiAlphas(){ return fVals; }
20  // const std::vector<double> puppiAlpha () {return fAlpha;}
21  const std::vector<double> & puppiAlphasMed() {return fAlphaMed;}
22  const std::vector<double> & puppiAlphasRMS() {return fAlphaRMS;}
23  const std::vector<int>& recoToPup() const {return fRecoToPup;}
24 
25  int puppiNAlgos(){ return fNAlgos; }
26  std::vector<PuppiCandidate> const & puppiParticles() const { return fPupParticles;}
27 
28 protected:
29  double goodVar (PuppiCandidate const &iPart,std::vector<PuppiCandidate> const &iParts, int iOpt,const double iRCone);
30  void getRMSAvg (int iOpt,std::vector<PuppiCandidate> const &iConstits,std::vector<PuppiCandidate> const &iParticles,std::vector<PuppiCandidate> const &iChargeParticles);
31  void getRawAlphas (int iOpt,std::vector<PuppiCandidate> const &iConstits,std::vector<PuppiCandidate> const &iParticles,std::vector<PuppiCandidate> const &iChargeParticles);
32  double getChi2FromdZ(double iDZ);
33  int getPuppiId ( float iPt, float iEta);
34  double var_within_R (int iId, const std::vector<PuppiCandidate> & particles, const PuppiCandidate& centre, const double R);
35 
37  const std::vector<RecoObj>* fRecoParticles;
38  std::vector<PuppiCandidate> fPFParticles;
39  std::vector<PuppiCandidate> fChargedPV;
40  std::vector<PuppiCandidate> fPupParticles;
41  std::vector<double> fWeights;
42  std::vector<double> fVals;
43  std::vector<double> fRawAlphas;
44  std::vector<double> fAlphaMed;
45  std::vector<double> fAlphaRMS;
46  std::vector<int> fRecoToPup;
47 
48  bool fApplyCHS;
49  bool fInvert;
50  bool fUseExp;
51  double fNeutralMinPt;
52  double fNeutralSlope;
54  double fPtMax;
55  int fNAlgos;
56  int fNPV;
57  double fPVFrac;
58  std::vector<PuppiAlgo> fPuppiAlgo;
59 };
60 #endif
61 
std::vector< PuppiCandidate > const & pfParticles() const
std::vector< double > const & puppiWeights()
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
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 > fAlphaMed
std::vector< PuppiCandidate > fChargedPV
double fPuppiWeightCut
int getPuppiId(float iPt, float iEta)
const std::vector< int > & recoToPup() const
std::vector< PuppiCandidate > const & puppiParticles() const
std::vector< PuppiCandidate > const & pvParticles() const
const std::vector< RecoObj > * fRecoParticles
std::vector< int > fRecoToPup
const std::vector< double > & puppiAlphasRMS()
std::vector< double > fWeights
std::vector< PuppiCandidate > fPupParticles
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
void setNPV(int iNPV)
const std::vector< double > & puppiRawAlphas()