CMS 3D CMS Logo

CSCChannelMapperPostls1.cc
Go to the documentation of this file.
2 
3 int CSCChannelMapperPostls1::rawStripChannel( const CSCDetId& id, int igeo ) const {
4 
5  // Translate a geometry-oriented strip channel in range 1-80, igeo,
6  // into corresponding raw channel.
7 
8  int iraw = igeo;
9 
10  bool zplus = (id.endcap()==1);
11 
12  bool me1a = (id.station()==1) && (id.ring()==4);
13  bool me1b = (id.station()==1) && (id.ring()==1);
14 
15  if ( me1a && zplus ) { iraw = 49 - iraw; } // 1-48 -> 48-1
16  if ( me1b && !zplus) { iraw = 65 - iraw; } // 1-64 -> 64-1
17 
18  return iraw;
19 }
20 
21 
22 int CSCChannelMapperPostls1::geomStripChannel( const CSCDetId& id, int iraw ) const {
23  // Translate a raw strip channel in range 1-80, iraw, into
24  // corresponding geometry-oriented channel in which increasing
25  // channel number <-> strip number increasing with +ve local x.
26 
27  int igeo = iraw;
28 
29  bool zplus = (id.endcap()==1);
30  bool me1a = (id.station()==1) && (id.ring()==4);
31  bool me1b = (id.station()==1) && (id.ring()==1);
32 
33  if ( me1a && zplus ) { igeo = 49 - igeo; } // 1-48 -> 48-1
34  if ( me1b && !zplus) { igeo = 65 - igeo; } // 1-64 -> 64-1
35 
36  return igeo;
37 }
38 
40  // This just returns the electronics channel label to which a given strip is connected
41  // In all chambers (including upgraded ME1A) this is just a direct 1-1 correspondence.
42  int ichan = strip;
43  return ichan;
44 }
45 
47  // Return the effective online CSCDetId for given offline CSCDetId
48  // That means the same one (for upgraded ME1A)
49  CSCDetId idraw( id );
50  return idraw;
51 }
int rawStripChannel(const CSCDetId &id, int igeom) const override
Return raw strip channel number for input geometrical channel number.
int channelFromStrip(const CSCDetId &id, int strip) const override
CSCDetId rawCSCDetId(const CSCDetId &id) const override
int geomStripChannel(const CSCDetId &id, int iraw) const override
Return geometrical strip channel number for input raw channel number.