|
||||
File indexing completed on 2024-04-06 12:25:47
0001 #ifndef RecoLocalCalo_HcalRecAlgos_HFRecHitAuxSetter_h_ 0002 #define RecoLocalCalo_HcalRecAlgos_HFRecHitAuxSetter_h_ 0003 0004 #include "DataFormats/HcalRecHit/interface/HFRecHit.h" 0005 #include "DataFormats/HcalRecHit/interface/HFPreRecHit.h" 0006 0007 // 0008 // Set rechit "auxiliary words" for the dual-anode HF reco 0009 // 0010 struct HFRecHitAuxSetter { 0011 // We will store up to three 8-bit ADC values 0012 static const unsigned MASK_ADC = 0xffffff; 0013 static const unsigned OFF_ADC = 0; 0014 0015 // Which byte is used by the sample of interest. 0016 // Normally 0, 1, or 2. Value of 3 means that 0017 // something went wrong, and SOI was not stored 0018 // in the HFPreRecHit. 0019 static const unsigned MASK_SOI = 0x3; 0020 static const unsigned OFF_SOI = 24; 0021 0022 // CAPID for the sample of interest. 0023 // Will be correct only if the SOI value 0024 // is less than 3. 0025 static const unsigned MASK_CAPID = 0x3; 0026 static const unsigned OFF_CAPID = 26; 0027 0028 // Anode status value. It is assumed that 0029 // the possible anode status values are 0030 // defined in the HFAnodeStatus.h header. 0031 static const unsigned MASK_STATUS = 0xf; 0032 static const unsigned OFF_STATUS = 28; 0033 0034 // Main function for setting the aux words. 0035 // 0036 // "soiPhase" argument tells us the byte into 0037 // which the sample of interest should be placed 0038 // in the aux word. "soiPhase" should be 0, 1, or 2. 0039 // The number of presamples stored will normally 0040 // be equal "soiPhase" and the number of postsamples 0041 // (2 - soiPhase). 0042 // 0043 static void setAux(const HFPreRecHit& prehit, const unsigned anodeStates[2], unsigned soiPhase, HFRecHit* rechit); 0044 }; 0045 0046 #endif // RecoLocalCalo_HcalRecAlgos_HFRecHitAuxSetter_h_
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |