Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:16:57

0001 #ifndef CALOBASE_TOWERINFODEFS_H
0002 #define CALOBASE_TOWERINFODEFS_H
0003 
0004 #include "RawTowerDefs.h"
0005 
0006 namespace TowerInfoDefs
0007 {
0008 
0009   unsigned int encode_emcal(const unsigned int towerIndex);
0010   unsigned int encode_emcal(const unsigned int etabin, const unsigned int phibin);
0011   unsigned int decode_emcal(const unsigned int tower_key);
0012 
0013   unsigned int encode_hcal(const unsigned int towerIndex);
0014   unsigned int encode_hcal(const unsigned int etabin, const unsigned int phibin);
0015   unsigned int decode_hcal(const unsigned int tower_key);
0016 
0017   unsigned int encode_epd(const unsigned int towerIndex);
0018   unsigned int encode_epd(const unsigned int arm, const unsigned int rbin, const unsigned int phibin);
0019   unsigned int decode_epd(const unsigned int tower_key);
0020 
0021   unsigned int get_epd_arm(unsigned int key);
0022   unsigned int get_epd_sector(unsigned int key);
0023   unsigned int get_epd_rbin(unsigned int key);
0024   unsigned int get_epd_phibin(unsigned int key);
0025   unsigned int getCaloTowerPhiBin(const unsigned int key);
0026   unsigned int getCaloTowerEtaBin(const unsigned int key);
0027 
0028   unsigned int get_mbd_arm(const unsigned int key);
0029   unsigned int get_mbd_side(const unsigned int key);  // side is same as arm
0030   unsigned int get_mbd_type(const unsigned int key);  // 0 for time 1 for charge
0031   unsigned int get_mbd_channel(const unsigned int key);
0032   unsigned int encode_mbd(const unsigned int towerIndex);
0033   unsigned int decode_mbd(const unsigned int key);
0034 
0035   unsigned int encode_zdc(const unsigned int towerIndex);  // has ZDC,SMD,VETO
0036   unsigned int decode_zdc(const unsigned int key);
0037   bool isZDC(const unsigned int towerIndex);
0038   int get_zdc_side(const unsigned int key);
0039   bool isSMD(const unsigned int towerIndex);
0040   int get_smd_side(const unsigned int key);
0041   bool isVeto(const unsigned int towerIndex);
0042   int get_veto_side(const unsigned int key);
0043 
0044   RawTowerDefs::keytype get_emcal_geokey_at_channel(const unsigned int towerIndex);
0045   RawTowerDefs::keytype get_hcalin_geokey_at_channel(const unsigned int towerIndex);
0046   RawTowerDefs::keytype get_hcalout_geokey_at_channel(const unsigned int towerIndex);
0047 
0048 }  // namespace TowerInfoDefs
0049 #endif