//____________________________________ int TempInfoUnpackPRDF::addPacketInfo(Packet *p, PHCompositeNode *topNode, const time_t etime, const int evtnr) { int packetid = p->getIdentifier(); RawTower_Temperature *tower; if ( packetid == 974 || packetid == 1074 ) // Inner Hcal { for(int ibinz=0; ibinz<PROTOTYPE2_FEM::NCH_IHCAL_ROWS; ibinz++) { for(int ibinphi=0; ibinphi<PROTOTYPE2_FEM::NCH_IHCAL_COLUMNS; ibinphi++) { tower = dynamic_cast<RawTower_Temperature*>(hcalin_temperature->getTower(ibinz,ibinphi)); if(!tower) { tower = new RawTower_Temperature(); hcalin_temperature->AddTower(ibinz,ibinphi,tower); } tower->add_entry( evtnr, etime, p->iValue(ibinz*PROTOTYPE2_FEM::NCH_IHCAL_COLUMNS + ibinphi)/1000. ); } } } else if ( packetid == 975 || packetid == 1075 ) // outer Hcal { for(int ibinz=0; ibinz<PROTOTYPE2_FEM::NCH_OHCAL_ROWS; ibinz++) { for(int ibinphi=0; ibinphi<PROTOTYPE2_FEM::NCH_OHCAL_COLUMNS; ibinphi++) { tower = dynamic_cast<RawTower_Temperature*>(hcalout_temperature->getTower(ibinz,ibinphi)); if(!tower) { tower = new RawTower_Temperature(); hcalout_temperature->AddTower(ibinz,ibinphi,tower); } tower->add_entry( evtnr, etime, p->iValue(ibinz*PROTOTYPE2_FEM::NCH_OHCAL_COLUMNS + ibinphi)/1000. ); } } } else if ( packetid == 982 || packetid == 1082 ) // emcal { for(int ibinz=0; ibinz<PROTOTYPE2_FEM::NCH_EMCAL_ROWS; ibinz++) { for(int ibinphi=0; ibinphi<PROTOTYPE2_FEM::NCH_EMCAL_COLUMNS; ibinphi++) { tower = dynamic_cast<RawTower_Temperature*>(emcal_temperature->getTower(ibinz,ibinphi)); if(!tower) { tower = new RawTower_Temperature(); emcal_temperature->AddTower(ibinz,ibinphi,tower); } tower->add_entry( evtnr, etime, p->iValue(ibinz*PROTOTYPE2_FEM::NCH_EMCAL_COLUMNS + ibinphi)/1000. ); } } } return 0; }
//____________________________________ int TempInfoUnpackPRDF::addPacketInfo(Packet *p, PHCompositeNode *topNode, const time_t etime, const int evtnr) { int packetid = p->getIdentifier(); RawTower_Temperature *tower; if ( packetid == 974 || packetid == 1074 ) // Inner Hcal { for(int ibinz=0; ibinz<PROTOTYPE2_FEM::NCH_IHCAL_ROWS; ibinz++) { for(int ibinphi=0; ibinphi<PROTOTYPE2_FEM::NCH_IHCAL_COLUMNS; ibinphi++) { tower = dynamic_cast<RawTower_Temperature*>(hcalin_temperature->getTower(ibinz,ibinphi)); if(!tower) { tower = new RawTower_Temperature(); hcalin_temperature->AddTower(ibinz,ibinphi,tower); } tower->add_entry( evtnr, etime, p->iValue(ibinz*PROTOTYPE2_FEM::NCH_IHCAL_COLUMNS + ibinphi)/1000. ); } } } else if ( packetid == 975 || packetid == 1075 ) // outer Hcal { for(int ibinz=0; ibinz<PROTOTYPE2_FEM::NCH_OHCAL_ROWS; ibinz++) { for(int ibinphi=0; ibinphi<PROTOTYPE2_FEM::NCH_OHCAL_COLUMNS; ibinphi++) { tower = dynamic_cast<RawTower_Temperature*>(hcalout_temperature->getTower(ibinz,ibinphi)); if(!tower) { tower = new RawTower_Temperature(); hcalout_temperature->AddTower(ibinz,ibinphi,tower); } tower->add_entry( evtnr, etime, p->iValue(ibinz*PROTOTYPE2_FEM::NCH_OHCAL_COLUMNS + ibinphi)/1000. ); } } } else if ( packetid == 982 || packetid == 1082 ) // emcal { for(int ibinz=0; ibinz<PROTOTYPE2_FEM::NCH_EMCAL_ROWS; ibinz++) { for(int ibinphi=0; ibinphi<PROTOTYPE2_FEM::NCH_EMCAL_COLUMNS; ibinphi++) { tower = dynamic_cast<RawTower_Temperature*>(emcal_temperature->getTower(ibinz,ibinphi)); if(!tower) { tower = new RawTower_Temperature(); emcal_temperature->AddTower(ibinz,ibinphi,tower); } // this takes care of the newly found "reverse" mapping. (0,0) is module 7, (0,7) is module 0, and // the 63 - (...) takes care of the reversed vector. tower->add_entry( evtnr, etime, p->iValue( 63- (ibinz*PROTOTYPE2_FEM::NCH_EMCAL_COLUMNS + (7-ibinphi) ) /1000. ) ); } } } return 0; }