#include <CSCStripHit.h>
Public Types | |
typedef std::vector< int > | ChannelContainer |
typedef std::vector< float > | StripHitADCContainer |
Public Member Functions | |
CSCStripHit * | clone () const |
Required for storage in RangeMap. | |
int | closestMaximum () const |
Number of strips to the closest other maximum. | |
CSCDetId | cscDetId () const |
Strip Hit is in this DetId. | |
CSCStripHit (const CSCDetId &id, const float &sHitPos, const int &tmax, const ChannelContainer &strips, const StripHitADCContainer &s_adc, const StripHitADCContainer &s_adcRaw, const int &numberOfConsecutiveStrips, const int &closestMaximum, const short int &deadStrip) | |
CSCStripHit () | |
short int | deadStrip () const |
is a neighbouring string a dead strip? | |
int | numberOfConsecutiveStrips () const |
Number of consecutive strips with charge. | |
void | print () const |
Print content of the striphit including L1A. | |
const StripHitADCContainer & | s_adc () const |
L1A. | |
const StripHitADCContainer & | s_adcRaw () const |
the raw ADC counts for each of the strip within cluster | |
float | sHitPos () const |
Strip hit position (centroid) | |
const ChannelContainer & | strips () const |
L1A. | |
const ChannelContainer & | stripsl1a () const |
L1A. | |
const ChannelContainer & | stripsTotal () const |
The strips used in cluster to produce strip hit (total content) | |
int | tmax () const |
Strip hit maximum time bin. | |
~CSCStripHit () | |
Private Attributes | |
int | theClosestMaximum |
int | theConsecutiveStrips |
short int | theDeadStrip |
CSCDetId | theDetId |
StripHitADCContainer | theStripHitADCs |
L1A. | |
float | theStripHitPosition |
StripHitADCContainer | theStripHitRawADCs |
int | theStripHitTmax |
ChannelContainer | theStrips |
ChannelContainer | theStripsHighBits |
L1A. | |
ChannelContainer | theStripsLowBits |
A (1-dim) hit reconstructed from strip data alone
Definition at line 16 of file CSCStripHit.h.
typedef std::vector<int> CSCStripHit::ChannelContainer |
Definition at line 22 of file CSCStripHit.h.
typedef std::vector<float> CSCStripHit::StripHitADCContainer |
Definition at line 21 of file CSCStripHit.h.
CSCStripHit::CSCStripHit | ( | ) |
Extract the lower byte for strip number
Extract the middle byte for L1A phase
Definition at line 4 of file CSCStripHit.cc.
References i, theStrips, theStripsHighBits, and theStripsLowBits.
Referenced by clone().
: theDetId(), theStripHitPosition(), theStripHitTmax(), theStrips(), theStripHitADCs(), theStripHitRawADCs(), theConsecutiveStrips(), theClosestMaximum(), theDeadStrip() { theStripsLowBits.clear(); for(int i=0; i<(int)theStrips.size(); i++){ theStripsLowBits.push_back(theStrips[i] & 0x000000FF); } theStripsHighBits.clear(); for(int i=0; i<(int)theStrips.size(); i++){ theStripsHighBits.push_back(theStrips[i] & 0x0000FF00); } }
CSCStripHit::CSCStripHit | ( | const CSCDetId & | id, |
const float & | sHitPos, | ||
const int & | tmax, | ||
const ChannelContainer & | strips, | ||
const StripHitADCContainer & | s_adc, | ||
const StripHitADCContainer & | s_adcRaw, | ||
const int & | numberOfConsecutiveStrips, | ||
const int & | closestMaximum, | ||
const short int & | deadStrip | ||
) |
Extract the 2 lowest bytes for strip number
Extract the 2 highest bytes for L1A phase
Definition at line 29 of file CSCStripHit.cc.
References i, theStrips, theStripsHighBits, and theStripsLowBits.
: theDetId( id ), theStripHitPosition( sHitPos ), theStripHitTmax( tmax ), theStrips( strips ), theStripHitADCs( s_adc ), theStripHitRawADCs( s_adcRaw ), theConsecutiveStrips(numberOfConsecutiveStrips), theClosestMaximum(closestMaximum), theDeadStrip(deadStrip) { theStripsLowBits.clear(); for(int i=0; i<(int)theStrips.size(); i++){ theStripsLowBits.push_back(theStrips[i] & 0x000000FF); } theStripsHighBits.clear(); for(int i=0; i<(int)theStrips.size(); i++){ theStripsHighBits.push_back(theStrips[i] & 0x0000FF00); } }
CSCStripHit::~CSCStripHit | ( | ) |
Definition at line 62 of file CSCStripHit.cc.
{}
CSCStripHit* CSCStripHit::clone | ( | void | ) | const [inline] |
Required for storage in RangeMap.
Definition at line 38 of file CSCStripHit.h.
References CSCStripHit().
{ return new CSCStripHit( *this ); }
int CSCStripHit::closestMaximum | ( | ) | const [inline] |
Number of strips to the closest other maximum.
Definition at line 68 of file CSCStripHit.h.
References theClosestMaximum.
Referenced by CSCXonStrip_MatchGatti::findXOnStrip().
{ return theClosestMaximum; }
CSCDetId CSCStripHit::cscDetId | ( | ) | const [inline] |
short int CSCStripHit::deadStrip | ( | ) | const [inline] |
is a neighbouring string a dead strip?
Definition at line 71 of file CSCStripHit.h.
References theDeadStrip.
Referenced by CSCXonStrip_MatchGatti::findXOnStrip(), and CSCMake2DRecHit::hitFromStripAndWire().
{return theDeadStrip; };
int CSCStripHit::numberOfConsecutiveStrips | ( | ) | const [inline] |
Number of consecutive strips with charge.
Definition at line 65 of file CSCStripHit.h.
References theConsecutiveStrips.
Referenced by CSCXonStrip_MatchGatti::findXOnStrip().
{ return theConsecutiveStrips; }
void CSCStripHit::print | ( | void | ) | const |
Print content of the striphit including L1A.
Debug.
L1A
Definition at line 67 of file CSCStripHit.cc.
References gather_cfg::cout, cscDetId(), i, gen::k, s_adc(), s_adcRaw(), sHitPos(), strips(), stripsl1a(), and tmax().
{ std::cout << "CSCStripHit in CSC Detector: " << std::dec << cscDetId() << std::endl; std::cout << " sHitPos: " << sHitPos() << std::endl; std::cout << " TMAX: " << tmax() << std::endl; std::cout << " STRIPS: "; for (int i=0; i<(int)strips().size(); i++) {std::cout << std::dec << strips()[i] << " (" << "HEX: " << std::hex << strips()[i] << ")" << " ";} std::cout << std::endl; std::cout << " L1APhase: "; for (int i=0; i<(int)stripsl1a().size(); i++) { //uint16_t L1ABitSet=(strips()[i] & 0xFF00); //std::cout << std::hex << (stripsl1a()[i] >> 15)<< " "; std::cout << "|"; for (int k=0; k<8 ; k++){ std::cout << ((stripsl1a()[i] >> (15-k)) & 0x1) << " ";} std::cout << "| "; } std::cout << std::endl; std::cout << " S_ADC: "; for (int i=0; i<(float)s_adc().size(); i++) {std::cout << s_adc()[i] << " ";} std::cout << std::endl; std::cout << " S_ADC_RAW: "; for (int i=0; i<(float)s_adcRaw().size(); i++) {std::cout << s_adcRaw()[i] << " ";} std::cout << std::endl; }
const StripHitADCContainer& CSCStripHit::s_adc | ( | ) | const [inline] |
L1A.
the ADC counts for each of the strip within cluster
Definition at line 59 of file CSCStripHit.h.
References theStripHitADCs.
Referenced by CSCXonStrip_MatchGatti::findXOnStrip(), CSCMake2DRecHit::hitFromStripAndWire(), and print().
{ return theStripHitADCs; }
const StripHitADCContainer& CSCStripHit::s_adcRaw | ( | ) | const [inline] |
the raw ADC counts for each of the strip within cluster
Definition at line 62 of file CSCStripHit.h.
References theStripHitRawADCs.
Referenced by CSCMake2DRecHit::hitFromStripAndWire(), and print().
{ return theStripHitRawADCs; }
float CSCStripHit::sHitPos | ( | ) | const [inline] |
Strip hit position (centroid)
Definition at line 44 of file CSCStripHit.h.
References theStripHitPosition.
Referenced by print().
{ return theStripHitPosition; }
const ChannelContainer& CSCStripHit::strips | ( | ) | const [inline] |
L1A.
The strips used in cluster to produce strip hit
Definition at line 53 of file CSCStripHit.h.
References theStripsLowBits.
Referenced by CSCXonStrip_MatchGatti::findXOnStrip(), CSCMake2DRecHit::hitFromStripAndWire(), and print().
{return theStripsLowBits;}
const ChannelContainer& CSCStripHit::stripsl1a | ( | ) | const [inline] |
L1A.
The L1A phase in strips used to produce strip hit
Definition at line 56 of file CSCStripHit.h.
References theStripsHighBits.
Referenced by CSCMake2DRecHit::hitFromStripAndWire(), and print().
{return theStripsHighBits;}
const ChannelContainer& CSCStripHit::stripsTotal | ( | ) | const [inline] |
The strips used in cluster to produce strip hit (total content)
Definition at line 50 of file CSCStripHit.h.
References theStrips.
Referenced by CSCMake2DRecHit::hitFromStripAndWire().
{return theStrips;}
int CSCStripHit::tmax | ( | ) | const [inline] |
Strip hit maximum time bin.
Definition at line 47 of file CSCStripHit.h.
References theStripHitTmax.
Referenced by CSCXonStrip_MatchGatti::findXOnStrip(), CSCMake2DRecHit::hitFromStripAndWire(), and print().
{ return theStripHitTmax; }
int CSCStripHit::theClosestMaximum [private] |
Definition at line 87 of file CSCStripHit.h.
Referenced by closestMaximum().
int CSCStripHit::theConsecutiveStrips [private] |
Definition at line 86 of file CSCStripHit.h.
Referenced by numberOfConsecutiveStrips().
short int CSCStripHit::theDeadStrip [private] |
Definition at line 88 of file CSCStripHit.h.
Referenced by deadStrip().
CSCDetId CSCStripHit::theDetId [private] |
Definition at line 78 of file CSCStripHit.h.
Referenced by cscDetId().
float CSCStripHit::theStripHitPosition [private] |
Definition at line 79 of file CSCStripHit.h.
Referenced by sHitPos().
Definition at line 85 of file CSCStripHit.h.
Referenced by s_adcRaw().
int CSCStripHit::theStripHitTmax [private] |
Definition at line 80 of file CSCStripHit.h.
Referenced by tmax().
ChannelContainer CSCStripHit::theStrips [private] |
Definition at line 81 of file CSCStripHit.h.
Referenced by CSCStripHit(), and stripsTotal().
Definition at line 82 of file CSCStripHit.h.
Referenced by CSCStripHit(), and strips().