51 return StatusCode::SUCCESS;
62 bool jDataTowerFilled =
false;
65 if(!jDataTowerContainer.
isValid()) {
66 ATH_MSG_ERROR(
"Could not retrieve collection " << jDataTowerContainer.
key() );
67 return StatusCode::FAILURE;
69 jDataTowerFilled = !jDataTowerContainer->
empty();
77 if(!jEmulatedTowerContainer.
isValid()) {
78 ATH_MSG_ERROR(
"Could not retrieve collection " << jEmulatedTowerContainer.
key() );
79 return StatusCode::FAILURE;
85 std::unique_ptr<jTowerContainer> local_jTowerContainerRaw = std::make_unique<jTowerContainer>();
96 data_jTowerContainer = &jEmulatedTowerContainer;
99 data_jTowerContainer = &jDataTowerContainer;
102 ATH_MSG_DEBUG(
"Collection used to build the jTower for simulation: " << (*data_jTowerContainer).key() <<
" with size: "<<(*data_jTowerContainer)->size());
106 unsigned int TTID = my_jTower->jFEXtowerID();
109 if( (targetTower = local_jTowerContainerRaw->findTower(TTID)) ) {
111 targetTower->
setiEta( my_jTower->globalEta() );
112 targetTower->
setiPhi( my_jTower->globalPhi() );
117 uint8_t source = my_jTower->Calosource();
122 targetTower->
set_Et(1,(my_jTower->et_count()).at(0)*500);
125 if( (my_jTower->isjTowerSat()).at(0) ) targetTower->
setHADSat();
130 if(source == 0 or source == 2 or source == 4 )
layer = 0;
136 if( (my_jTower->isjTowerSat()).at(0) ){
147 ATH_MSG_ERROR(
"Tower ID is officially unknown - it will be ignored. (Needs investigation). Please report this!" );
153 ATH_MSG_ERROR(
"Falling into the legacy path. This should never happen!. Use EmulatedTowers or DataTowers - Contact L1Calo offline experts");
154 return StatusCode::FAILURE;
168 ATH_CHECK(jTowerContainerSG.
record(std::move( local_jTowerContainerRaw ) ) );
173 return StatusCode::SUCCESS;