CMS 3D CMS Logo

BPHDecayToResTrkBuilder.h
Go to the documentation of this file.
1 #ifndef HeavyFlavorAnalysis_SpecificDecay_BPHDecayToResTrkBuilder_h
2 #define HeavyFlavorAnalysis_SpecificDecay_BPHDecayToResTrkBuilder_h
3 
13 //----------------------
14 // Base Class Headers --
15 //----------------------
19 
20 //------------------------------------
21 // Collaborating Class Declarations --
22 //------------------------------------
25 
27 
30 
31 //---------------
32 // C++ Headers --
33 //---------------
34 #include <string>
35 #include <vector>
36 
37 // ---------------------
38 // -- Class Interface --
39 // ---------------------
40 
41 template <class ProdType, class ResType>
43  public BPHDecayConstrainedBuilder<ProdType, ResType>,
44  public BPHDecaySpecificBuilder<ProdType> {
45 public:
48 
52  const std::string& resName,
53  double resMass,
54  double resWidth,
55  const std::vector<res_ptr>& resCollection,
56  const std::string& trkName,
57  double trkMass,
58  double trkSigma,
59  const BPHRecoBuilder::BPHGenericCollection* trkCollection)
60  : BPHDecayGenericBuilderBase(es, nullptr),
61  BPHDecayConstrainedBuilderBase(resName, resMass, resWidth),
62  BPHDecayToResTrkBuilderBase(trkName, trkMass, trkSigma, trkCollection),
63  BPHDecayConstrainedBuilder<ProdType, ResType>(resCollection) {}
64 
65  // deleted copy constructor and assignment operator
68 
71  ~BPHDecayToResTrkBuilder() override = default;
72 
73 protected:
74  BPHDecayToResTrkBuilder(const std::vector<res_ptr>& resCollection,
75  const std::string& trkName,
76  double trkMass,
77  double trkSigma,
78  const BPHRecoBuilder::BPHGenericCollection* trkCollection)
79  : BPHDecayToResTrkBuilderBase(trkName, trkMass, trkSigma, trkCollection),
80  BPHDecayConstrainedBuilder<ProdType, ResType>(resCollection) {}
81 };
82 
83 #endif
ProdType::const_pointer prod_ptr
BPHDecayToResTrkBuilder & operator=(const BPHDecayToResTrkBuilder &x)=delete
BPHDecayToResTrkBuilder(const std::vector< res_ptr > &resCollection, const std::string &trkName, double trkMass, double trkSigma, const BPHRecoBuilder::BPHGenericCollection *trkCollection)
~BPHDecayToResTrkBuilder() override=default
common object to interface with edm collections
BPHDecayToResTrkBuilder(const BPHEventSetupWrapper &es, const std::string &resName, double resMass, double resWidth, const std::vector< res_ptr > &resCollection, const std::string &trkName, double trkMass, double trkSigma, const BPHRecoBuilder::BPHGenericCollection *trkCollection)