Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:21:55

0001 #ifndef L1Trigger_TrackFindingTracklet_interface_StubStreamData_h
0002 #define L1Trigger_TrackFindingTracklet_interface_StubStreamData_h
0003 
0004 #include "L1Trigger/TrackFindingTracklet/interface/L1TStub.h"
0005 
0006 #include <string>
0007 
0008 // Represents an element of the bit-accurate stub stream from TrackBuilder output
0009 // (This class only needed to support stand-alone running of this code).
0010 
0011 namespace trklet {
0012 
0013   class L1TStub;
0014 
0015   class StubStreamData {
0016   public:
0017     StubStreamData() {}
0018 
0019     StubStreamData(int iSeed, const L1TStub& stub, const std::string& dataBits)
0020         : iSeed_(iSeed), stub_(stub), dataBits_(dataBits) {}
0021 
0022     ~StubStreamData() = default;
0023 
0024     int iSeed() const { return iSeed_; }          // Seed type
0025     bool valid() const { return (iSeed_ >= 0); }  // Valid stub
0026     const L1TStub& stub() const { return stub_; }
0027     // String with bits of valid bit + r coordinate + phi residual + r or z residual.
0028     const std::string& dataBits() const { return dataBits_; }
0029 
0030   private:
0031     int iSeed_{-1};
0032     L1TStub stub_;
0033     std::string dataBits_{""};
0034   };
0035 };  // namespace trklet
0036 #endif