File indexing completed on 2024-04-06 12:04:35
0001 #ifndef DataFormats_L1TMuonPhase2_EMTFInput_h
0002 #define DataFormats_L1TMuonPhase2_EMTFInput_h
0003
0004 #include <cstdint>
0005 #include <vector>
0006
0007 #include "DataFormats/L1TMuon/interface/L1TMuonSubsystems.h"
0008
0009 namespace l1t::phase2 {
0010
0011 class EMTFInput {
0012 public:
0013 typedef std::vector<uint16_t> hits_t;
0014 typedef std::vector<uint16_t> segs_t;
0015
0016 EMTFInput() : endcap_(0), sector_(0), bx_(0), hits_{}, segs_{} {}
0017 ~EMTFInput() = default;
0018
0019
0020 void setEndcap(int16_t aEndcap) { endcap_ = aEndcap; }
0021 void setSector(int16_t aSector) { sector_ = aSector; }
0022 void setBx(int16_t aBx) { bx_ = aBx; }
0023 void setHits(const hits_t& aHits) { hits_ = aHits; }
0024 void setSegs(const segs_t& aSegs) { segs_ = aSegs; }
0025
0026
0027 int16_t endcap() const { return endcap_; }
0028 int16_t sector() const { return sector_; }
0029 int16_t bx() const { return bx_; }
0030 const hits_t& hits() const { return hits_; }
0031 const segs_t& segs() const { return segs_; }
0032
0033 private:
0034 int16_t endcap_;
0035 int16_t sector_;
0036 int16_t bx_;
0037 hits_t hits_;
0038 segs_t segs_;
0039 };
0040
0041 typedef std::vector<EMTFInput> EMTFInputCollection;
0042
0043 }
0044
0045 #endif