File indexing completed on 2024-04-06 12:15:35
0001 #ifndef HeavyFlavorAnalysis_SpecificDecay_BPHDecayToV0DiffMassBuilder_h
0002 #define HeavyFlavorAnalysis_SpecificDecay_BPHDecayToV0DiffMassBuilder_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayToV0Builder.h"
0018 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayToTkpTknSymChargeBuilder.h"
0019
0020
0021
0022
0023 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoBuilder.h"
0024 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoCandidate.h"
0025 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHPlusMinusCandidate.h"
0026
0027 class BPHEventSetupWrapper;
0028
0029
0030
0031
0032 #include <string>
0033 #include <vector>
0034 #include <map>
0035
0036
0037
0038
0039
0040 class BPHDecayToV0DiffMassBuilder : public BPHDecayToV0Builder, public BPHDecayToTkpTknSymChargeBuilder {
0041 public:
0042
0043
0044 BPHDecayToV0DiffMassBuilder(const BPHEventSetupWrapper& es,
0045 const std::string& daug1Name,
0046 double daug1Mass,
0047 double daug1Sigma,
0048 const std::string& daug2Name,
0049 double daug2Mass,
0050 double daug2Sigma,
0051 const BPHRecoBuilder::BPHGenericCollection* posCollection,
0052 const BPHRecoBuilder::BPHGenericCollection* negCollection,
0053 double expectedMass);
0054 BPHDecayToV0DiffMassBuilder(const BPHEventSetupWrapper& es,
0055 const std::string& daug1Name,
0056 double daug1Mass,
0057 double daug1Sigma,
0058 const std::string& daug2Name,
0059 double daug2Mass,
0060 double daug2Sigma,
0061 const std::vector<reco::VertexCompositeCandidate>* v0Collection,
0062 double expectedMass,
0063 const std::string& searchList = "cfp");
0064 BPHDecayToV0DiffMassBuilder(const BPHEventSetupWrapper& es,
0065 const std::string& daug1Name,
0066 double daug1Mass,
0067 double daug1Sigma,
0068 const std::string& daug2Name,
0069 double daug2Mass,
0070 double daug2Sigma,
0071 const std::vector<reco::VertexCompositePtrCandidate>* vpCollection,
0072 double expectedMass,
0073 const std::string& searchList = "cfp");
0074
0075
0076 BPHDecayToV0DiffMassBuilder(const BPHDecayToV0DiffMassBuilder& x) = delete;
0077 BPHDecayToV0DiffMassBuilder& operator=(const BPHDecayToV0DiffMassBuilder& x) = delete;
0078
0079
0080
0081 ~BPHDecayToV0DiffMassBuilder() override = default;
0082
0083
0084
0085
0086
0087 void setPtMin(double pt) {
0088 setTrk1PtMin(pt);
0089 setTrk2PtMin(pt);
0090 }
0091 void setEtaMax(double eta) {
0092 setTrk1EtaMax(eta);
0093 setTrk2EtaMax(eta);
0094 }
0095
0096 protected:
0097 double p1Mass;
0098 double p2Mass;
0099 double p1Sigma;
0100 double p2Sigma;
0101 double expMass;
0102
0103
0104 void buildFromBPHGenericCollection() override;
0105 BPHPlusMinusCandidatePtr buildCandidate(const reco::Candidate* c1,
0106 const reco::Candidate* c2,
0107 const void* v0,
0108 v0Type type) override;
0109
0110 private:
0111
0112 void fillRecList() override { BPHDecayToV0Builder::fillRecList(); }
0113 };
0114
0115 #endif