Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-07-08 01:45:55

0001 #ifndef HeavyFlavorAnalysis_SpecificDecay_BPHLambda0ToPPiBuilder_h
0002 #define HeavyFlavorAnalysis_SpecificDecay_BPHLambda0ToPPiBuilder_h
0003 /** \class BPHLambda0ToPPiBuilder
0004  *
0005  *  Description: 
0006  *     Class to build Lambda0 to p pi candidates
0007  *
0008  *  \author Paolo Ronchese INFN Padova
0009  *
0010  */
0011 
0012 //----------------------
0013 // Base Class Headers --
0014 //----------------------
0015 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayToV0DiffMassBuilder.h"
0016 
0017 //------------------------------------
0018 // Collaborating Class Declarations --
0019 //------------------------------------
0020 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHDecayGenericBuilderBase.h"
0021 #include "HeavyFlavorAnalysis/SpecificDecay/interface/BPHParticleMasses.h"
0022 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoBuilder.h"
0023 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHRecoCandidate.h"
0024 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHPlusMinusCandidate.h"
0025 #include "HeavyFlavorAnalysis/RecoDecay/interface/BPHVertexCompositePtrCandidate.h"
0026 
0027 #include "DataFormats/Candidate/interface/VertexCompositeCandidate.h"
0028 
0029 #include "FWCore/Framework/interface/EventSetup.h"
0030 
0031 class BPHEventSetupWrapper;
0032 
0033 //---------------
0034 // C++ Headers --
0035 //---------------
0036 #include <string>
0037 #include <vector>
0038 
0039 //              ---------------------
0040 //              -- Class Interface --
0041 //              ---------------------
0042 
0043 class BPHLambda0ToPPiBuilder : public BPHDecayToV0DiffMassBuilder {
0044 public:
0045   /** Constructor
0046    */
0047   BPHLambda0ToPPiBuilder(const BPHEventSetupWrapper& es,
0048                          const BPHRecoBuilder::BPHGenericCollection* protonCollection,
0049                          const BPHRecoBuilder::BPHGenericCollection* pionCollection)
0050       : BPHDecayGenericBuilderBase(es),
0051         BPHDecayToV0DiffMassBuilder(es,
0052                                     "Proton",
0053                                     BPHParticleMasses::protonMass,
0054                                     BPHParticleMasses::protonMSigma,
0055                                     "Pion",
0056                                     BPHParticleMasses::pionMass,
0057                                     BPHParticleMasses::pionMSigma,
0058                                     protonCollection,
0059                                     pionCollection,
0060                                     BPHParticleMasses::lambda0Mass) {
0061     setPtMin(0.7);
0062     setEtaMax(10.0);
0063     setMassRange(0.80, 1.40);
0064   }
0065 
0066   template <class V0VertexType>
0067   BPHLambda0ToPPiBuilder(const BPHEventSetupWrapper& es,
0068                          const std::vector<V0VertexType>* v0Collection,
0069                          const std::string& searchList = "cfp")
0070       : BPHDecayGenericBuilderBase(es),
0071         BPHDecayToV0DiffMassBuilder(es,
0072                                     "Proton",
0073                                     BPHParticleMasses::protonMass,
0074                                     BPHParticleMasses::protonMSigma,
0075                                     "Pion",
0076                                     BPHParticleMasses::pionMass,
0077                                     BPHParticleMasses::pionMSigma,
0078                                     v0Collection,
0079                                     BPHParticleMasses::lambda0Mass) {
0080     setPtMin(0.0);
0081     setEtaMax(10.0);
0082     setMassRange(0.00, 3.00);
0083   }
0084 
0085   // deleted copy constructor and assignment operator
0086   BPHLambda0ToPPiBuilder(const BPHLambda0ToPPiBuilder& x) = delete;
0087   BPHLambda0ToPPiBuilder& operator=(const BPHLambda0ToPPiBuilder& x) = delete;
0088 
0089   /** Destructor
0090    */
0091   ~BPHLambda0ToPPiBuilder() override = default;
0092 };
0093 
0094 #endif