CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CSCRecHit2D.h
Go to the documentation of this file.
1 #ifndef DataFormats_CSCRecHit2D_H
2 #define DataFormats_CSCRecHit2D_H
3 
14 #include <vector>
15 #include <map>
16 #include <iosfwd>
17 
18 class CSCRecHit2D : public RecHit2DLocalPos {
19 
20 public:
21 
22  typedef std::vector<int> ChannelContainer;
24 
26 
27  CSCRecHit2D();
28 
29  CSCRecHit2D( const CSCDetId& id,
30  const LocalPoint& pos, const LocalError& err,
32  const ADCContainer& adcs,
34  float tpeak,
35  float posInStrip,
36  float errInStrip,
37  int quality,
38  short int badStrip=0, short int badWireGroup=0,
39  int scaledWireTime=0 );
40 
41  ~CSCRecHit2D();
42 
44  CSCRecHit2D* clone() const { return new CSCRecHit2D( *this ); }
47  CSCDetId cscDetId() const { return geographicalId(); }
48 
50  const ChannelContainer& channels() const { return theStripsLowBits; }
51 
54  const ChannelContainer& channelsl1a() const { return theStripsHighBits; }
55 
57  const ChannelContainer& channelsTotal() const { return theStrips; }
58 
60  const ADCContainer& adcs() const { return theADCs; }
61 
63  //const ChannelContainer& wgroups() const { return theWireGroups; }
65 
68 
71 
73  float tpeak() const { return theTpeak; }
74 
76  float positionWithinStrip() const { return thePositionWithinStrip; };
77 
79  float errorWithinStrip() const { return theErrorWithinStrip;} ;
80 
82  int quality() const { return theQuality;}
83 
85  short int badStrip() const { return theBadStrip; }
86  short int badWireGroup() const { return theBadWireGroup; }
87 
88  // Calculated wire bx to half bx level
89  float wireTime() const { return (float)theScaledWireTime/100.; }
90 
92  virtual bool sharesInput(const TrackingRecHit *other, TrackingRecHit::SharedInputType what) const;
93 
95  bool sharesInput(const TrackingRecHit *other, CSCRecHit2D::SharedInputType what) const;
96 
98  bool sharesInput(const CSCRecHit2D *otherRecHit, CSCRecHit2D::SharedInputType what) const;
99 
101  void print() const;
102 
103 private:
104 
110  float theTpeak;
114  short int theBadStrip;
115  short int theBadWireGroup;
121 
122 };
123 
125 std::ostream& operator<<(std::ostream& os, const CSCRecHit2D& rh);
126 
127 #endif
128 
SharedInputType
definition of equality via shared input
ChannelContainer theWgroupsLowBits
BX.
Definition: CSCRecHit2D.h:120
ChannelContainer wgroupsBXandWire() const
The BX + wire group number.
Definition: CSCRecHit2D.h:70
LocalPoint theLocalPosition
Definition: CSCRecHit2D.h:105
CSCDetId cscDetId() const
Definition: CSCRecHit2D.h:47
ChannelContainer wgroups() const
Container of wire groups comprising the rechit.
Definition: CSCRecHit2D.h:64
float tpeak() const
Fitted peaking time.
Definition: CSCRecHit2D.h:73
ChannelContainer theStrips
Definition: CSCRecHit2D.h:107
short int badStrip() const
flags for involvement of &#39;bad&#39; channels
Definition: CSCRecHit2D.h:85
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
virtual bool sharesInput(const TrackingRecHit *other, TrackingRecHit::SharedInputType what) const
Returns true if the two TrackingRecHits are using the same input information, false otherwise...
Definition: CSCRecHit2D.cc:85
const ChannelContainer & channelsl1a() const
const ChannelContainer&amp; channels() const { return theStrips; }
Definition: CSCRecHit2D.h:54
short int theBadStrip
Definition: CSCRecHit2D.h:114
CSCRecHit2D * clone() const
RecHit2DLocalPos base class interface.
Definition: CSCRecHit2D.h:44
edm::RangeMap< int, std::vector< float > > ADCContainer
Definition: CSCRecHit2D.h:23
const ADCContainer & adcs() const
L1A.
Definition: CSCRecHit2D.h:60
const ChannelContainer & channelsTotal() const
L1A.
Definition: CSCRecHit2D.h:57
ADCContainer theADCs
Definition: CSCRecHit2D.h:108
short int theBadWireGroup
Definition: CSCRecHit2D.h:115
void print() const
Print the content of the RecHit2D including L1A (for debugging)
Definition: CSCRecHit2D.cc:214
LocalError localPositionError() const
Definition: CSCRecHit2D.h:46
LocalError theLocalError
Definition: CSCRecHit2D.h:106
float theTpeak
Definition: CSCRecHit2D.h:110
ChannelContainer theStripsLowBits
Definition: CSCRecHit2D.h:117
ChannelContainer theStripsHighBits
L1A.
Definition: CSCRecHit2D.h:118
float positionWithinStrip() const
The estimated position within the strip.
Definition: CSCRecHit2D.h:76
int theScaledWireTime
Definition: CSCRecHit2D.h:116
float thePositionWithinStrip
Definition: CSCRecHit2D.h:111
float theErrorWithinStrip
Definition: CSCRecHit2D.h:112
ChannelContainer theWireGroups
Definition: CSCRecHit2D.h:109
int quality() const
quality flag of the reconstruction
Definition: CSCRecHit2D.h:82
const ChannelContainer & channels() const
Extracting strip channel numbers comprising the rechit.
Definition: CSCRecHit2D.h:50
float wireTime() const
Definition: CSCRecHit2D.h:89
float errorWithinStrip() const
The uncertainty of the estimated position within the strip.
Definition: CSCRecHit2D.h:79
DetId geographicalId() const
LocalPoint localPosition() const
Definition: CSCRecHit2D.h:45
short int badWireGroup() const
Definition: CSCRecHit2D.h:86
ChannelContainer theWgroupsHighBits
L1A.
Definition: CSCRecHit2D.h:119
std::vector< int > ChannelContainer
Definition: CSCRecHit2D.h:22
ChannelContainer wgroupsBX() const
The BX number.
Definition: CSCRecHit2D.h:67