File indexing completed on 2024-04-06 12:25:59
0001 #ifndef CSCRecHitD_CSCWireHit_H
0002 #define CSCRecHitD_CSCWireHit_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #include <DataFormats/MuonDetId/interface/CSCDetId.h>
0013
0014 #include <vector>
0015 #include <iosfwd>
0016
0017 class CSCWireHit {
0018 public:
0019 typedef std::vector<int> ChannelContainer;
0020
0021 CSCWireHit();
0022 CSCWireHit(const CSCDetId& id,
0023 const float& wHitPos,
0024 ChannelContainer& wgroups,
0025 const int& tmax,
0026 const short int& deadWG,
0027 const std::vector<int>& timeBinsOn);
0028
0029 ~CSCWireHit();
0030
0031
0032 CSCWireHit* clone() const { return new CSCWireHit(*this); }
0033
0034
0035 CSCDetId cscDetId() const { return theDetId; }
0036
0037
0038 float wHitPos() const { return theWireHitPosition; }
0039
0040
0041
0042 ChannelContainer wgroups() const { return theWgroupsLowBits; }
0043
0044
0045 ChannelContainer wgroupsBX() const { return theWgroupsHighBits; }
0046
0047
0048 ChannelContainer wgroupsBXandWire() const { return theWgroups; }
0049
0050
0051 int tmax() const { return theWireHitTmax; }
0052
0053
0054 short int deadWG() const { return theDeadWG; };
0055
0056
0057 std::vector<int> timeBinsOn() const { return theTimeBinsOn; };
0058
0059
0060 void print() const;
0061
0062 private:
0063 CSCDetId theDetId;
0064 float theWireHitPosition;
0065 ChannelContainer theWgroups;
0066 ChannelContainer theWgroupsHighBits;
0067 ChannelContainer theWgroupsLowBits;
0068 int theWireHitTmax;
0069 short int theDeadWG;
0070 std::vector<int> theTimeBinsOn;
0071 };
0072
0073 #endif