File indexing completed on 2024-04-06 12:04:31
0001 #ifndef DataFormatsL1TCorrelator_TkJet_h
0002 #define DataFormatsL1TCorrelator_TkJet_h
0003
0004
0005
0006
0007
0008
0009
0010 #include "DataFormats/L1Trigger/interface/L1Candidate.h"
0011 #include "DataFormats/Common/interface/Ref.h"
0012
0013 #include "DataFormats/L1Trigger/interface/Jet.h"
0014 #include "DataFormats/L1TrackTrigger/interface/TTTypes.h"
0015
0016 namespace l1t {
0017
0018 class TkJet : public L1Candidate {
0019 public:
0020 typedef TTTrack<Ref_Phase2TrackerDigi_> L1TTTrackType;
0021 typedef std::vector<L1TTTrackType> L1TTTrackCollection;
0022
0023 TkJet();
0024
0025 TkJet(const LorentzVector& p4,
0026 const edm::Ref<JetBxCollection>& jetRef,
0027 const std::vector<edm::Ptr<L1TTTrackType> >& trkPtrs,
0028 float jetvtx = -999.);
0029 TkJet(const LorentzVector& p4,
0030 const std::vector<edm::Ptr<L1TTTrackType> >& trkPtrs,
0031 float jetvtx = -999.,
0032 unsigned int ntracks = 0,
0033 unsigned int tighttracks = 0,
0034 unsigned int displacedtracks = 0,
0035 unsigned int tightdisplacedtracks = 0,
0036 bool displacedTag = false);
0037
0038
0039
0040 const edm::Ref<JetBxCollection>& jetRef() const { return jetRef_; }
0041
0042 const std::vector<edm::Ptr<L1TTTrackType> >& trkPtrs() const { return trkPtrs_; }
0043
0044 float jetVtx() const { return JetVtx_; }
0045 unsigned int ntracks() const { return ntracks_; }
0046 unsigned int nTighttracks() const { return tighttracks_; }
0047 unsigned int nDisptracks() const { return displacedtracks_; }
0048 unsigned int nTightDisptracks() const { return tightdisplacedtracks_; }
0049 bool isDisplaced() const { return displacedTag_; }
0050
0051
0052 void setJetVtx(float JetVtx) { JetVtx_ = JetVtx; }
0053
0054 int bx() const;
0055
0056 private:
0057 edm::Ref<JetBxCollection> jetRef_;
0058 std::vector<edm::Ptr<L1TTTrackType> > trkPtrs_;
0059 float JetVtx_;
0060 unsigned int ntracks_, tighttracks_, displacedtracks_, tightdisplacedtracks_;
0061 bool displacedTag_;
0062 };
0063 }
0064
0065 #endif