Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-19 23:20:19

0001 #ifndef RecoTracker_LST_interface_LSTOutput_h
0002 #define RecoTracker_LST_interface_LSTOutput_h
0003 
0004 #include <memory>
0005 #include <vector>
0006 
0007 #include "RecoTracker/LSTCore/interface/Common.h"
0008 
0009 class LSTOutput {
0010 public:
0011   LSTOutput() = default;
0012   LSTOutput(std::vector<std::vector<unsigned int>> const hitIdx,
0013             std::vector<unsigned int> const len,
0014             std::vector<int> const seedIdx,
0015             std::vector<short> const trackCandidateType)
0016       : hitIdx_(std::move(hitIdx)),
0017         len_(std::move(len)),
0018         seedIdx_(std::move(seedIdx)),
0019         trackCandidateType_(std::move(trackCandidateType)) {}
0020 
0021   using LSTTCType = lst::LSTObjType;
0022 
0023   // Hit indices of each of the LST track candidates.
0024   std::vector<std::vector<unsigned int>> const& hitIdx() const { return hitIdx_; }
0025   // Number of hits of each of the LST track candidates.
0026   std::vector<unsigned int> const& len() const { return len_; }
0027   // Index of the pixel track associated to each of the LST track candidates.
0028   // If not associated to a pixel track, which is the case for T5s, it defaults to -1.
0029   std::vector<int> const& seedIdx() const { return seedIdx_; }
0030   // LSTTCType from RecoTracker/LSTCore/interface/Common.h
0031   std::vector<short> const& trackCandidateType() const { return trackCandidateType_; }
0032 
0033 private:
0034   std::vector<std::vector<unsigned int>> hitIdx_;
0035   std::vector<unsigned int> len_;
0036   std::vector<int> seedIdx_;
0037   std::vector<short> trackCandidateType_;
0038 };
0039 
0040 #endif