File indexing completed on 2024-09-07 04:37:08
0001 #ifndef __L1Trigger_VertexFinder_L1Track_h__
0002 #define __L1Trigger_VertexFinder_L1Track_h__
0003
0004 #include <vector>
0005
0006 #include "DataFormats/Common/interface/Ptr.h"
0007 #include "DataFormats/L1TrackTrigger/interface/TTTypes.h"
0008
0009
0010 #include "SimDataFormats/TrackingAnalysis/interface/TrackingParticle.h"
0011 #include "SimDataFormats/Associations/interface/TTClusterAssociationMap.h"
0012 #include "SimDataFormats/Associations/interface/TTStubAssociationMap.h"
0013
0014 namespace l1tVertexFinder {
0015
0016
0017 class L1Track {
0018 public:
0019 L1Track(const edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_>>& aTrack) : track_(aTrack) {}
0020 ~L1Track() {}
0021
0022 float eta() const { return track_->momentum().eta(); };
0023 float phi0() const { return track_->momentum().phi(); };
0024 float pt() const { return track_->momentum().transverse(); };
0025 float z0() const { return track_->POCA().z(); };
0026 float weight() const { return weight_; };
0027 void setWeight(float w) { weight_ = w; };
0028 double MVA1() const { return track_->trkMVA1(); };
0029
0030
0031 float chi2dof() const { return track_->chi2Red(); };
0032
0033 unsigned int getNumStubs() const { return track_->getStubRefs().size(); }
0034
0035 const edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_>>& getTTTrackPtr() const { return track_; };
0036
0037 private:
0038 edm::Ptr<TTTrack<Ref_Phase2TrackerDigi_>> track_;
0039 float weight_;
0040 };
0041
0042 }
0043
0044 #endif