File indexing completed on 2024-04-06 12:15:35
0001 #ifndef HeavyFlavorAnalysis_SpecificDecay_BPHDecayToResTrkTrkSameMassBuilderBase_h
0002 #define HeavyFlavorAnalysis_SpecificDecay_BPHDecayToResTrkTrkSameMassBuilderBase_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayConstrainedBuilderBase.h"
0018 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayGenericBuilder.h"
0019
0020
0021
0022
0023 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHParticlePtSelect.h"
0024 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHParticleEtaSelect.h"
0025 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoBuilder.h"
0026
0027 class BPHEventSetupWrapper;
0028 class BPHParticleNeutralVeto;
0029
0030
0031
0032
0033 #include <string>
0034 #include <vector>
0035
0036
0037
0038
0039
0040 class BPHDecayToResTrkTrkSameMassBuilderBase : public virtual BPHDecayConstrainedBuilderBase {
0041 public:
0042
0043
0044 BPHDecayToResTrkTrkSameMassBuilderBase(const BPHEventSetupWrapper& es,
0045 const std::string& resName,
0046 double resMass,
0047 double resWidth,
0048 const std::string& posName,
0049 const std::string& negName,
0050 double trkMass,
0051 double trkSigma,
0052 const BPHRecoBuilder::BPHGenericCollection* posCollection,
0053 const BPHRecoBuilder::BPHGenericCollection* negCollection);
0054
0055
0056 BPHDecayToResTrkTrkSameMassBuilderBase(const BPHDecayToResTrkTrkSameMassBuilderBase& x) = delete;
0057 BPHDecayToResTrkTrkSameMassBuilderBase& operator=(const BPHDecayToResTrkTrkSameMassBuilderBase& x) = delete;
0058
0059
0060
0061 ~BPHDecayToResTrkTrkSameMassBuilderBase() override = default;
0062
0063
0064
0065
0066
0067 void setTrkPtMin(double pt);
0068 void setTrkEtaMax(double eta);
0069
0070
0071 double getTrkPtMin() const { return ptMin; }
0072 double getTrkEtaMax() const { return etaMax; }
0073
0074 protected:
0075 BPHDecayToResTrkTrkSameMassBuilderBase(const std::string& posName,
0076 const std::string& negName,
0077 double trkMass,
0078 double trkSigma,
0079 const BPHRecoBuilder::BPHGenericCollection* posCollection,
0080 const BPHRecoBuilder::BPHGenericCollection* negCollection);
0081
0082 std::string pName;
0083 std::string nName;
0084 double tMass;
0085 double tSigma;
0086
0087 const BPHRecoBuilder::BPHGenericCollection* pCollection;
0088 const BPHRecoBuilder::BPHGenericCollection* nCollection;
0089
0090 double ptMin;
0091 double etaMax;
0092
0093 void fillTrkTrkList();
0094 std::vector<BPHPlusMinusConstCandPtr> ttPairs;
0095 };
0096
0097 #endif