|
ATLAS Offline Software
|
Go to the documentation of this file.
32 #include "CaloDetDescr/CaloDetDescrElement.h"
44 m_tileActiveHitCnt (
"TileCalibHitActiveCell"),
45 m_tileInactiveHitCnt (
"TileCalibHitInactiveCell"),
46 m_tileDMHitCnt (
"TileCalibHitDeadMaterial"),
47 m_larInactHitCnt (
"LArCalibrationHitInactive"),
48 m_larActHitCnt (
"LArCalibrationHitActive"),
49 m_larDMHitCnt (
"LArCalibrationHitDeadMaterial"),
54 m_storeUnknown(false),
55 m_caloCell_Tot(
"TotalCalibCell"), m_caloCell_Vis(
"VisCalibCell"),
56 m_caloCell_Em(
""), m_caloCell_NonEm(
""),
93 return StatusCode::SUCCESS;
130 ATH_MSG_DEBUG(
"CaloCalibrationHitContainers retrieved successfuly" );
137 int lar_unknown_nchan=0;
139 int tile_unknown_nchan = 0 ;
143 std::vector<Identifier>
ID;
155 if( lar_inactHitCnt->
Size() != 0 )
159 double Etot = hit->energyTotal();
160 double Eem = hit->energy(0);
161 double Enonem = hit->energy(1);
162 double Evis = Eem + Enonem;
201 ATH_MSG_DEBUG(
"Ianctive CalibHit doesn't respect to any LArCell - "
202 <<
"create dummy LArCell to store energy " );
239 if( lar_actHitCnt->
Size() != 0 )
242 int hits_vec_size = (
int)
ID.size() ;
250 for (
int n=0;
n!=hits_vec_size;
n++)
269 double Etot = hit->energyTotal();
270 double Eem = hit->energy(0);
271 double Enonem = hit->energy(1);
272 double Evis = Eem + Enonem;
308 ATH_MSG_DEBUG(
"Active CalibHit doesn't respect to any LArCell - "
309 <<
"create dummy LArCell to store energy " );
349 for(
int itr=0; itr!=
m_nchan; itr++)
369 for(
int itr=0; itr!=
m_nchan; itr++)
389 for(
int itr=0; itr!=
m_nchan; itr++)
412 for(
int itr=0; itr!=
m_nchan; itr++)
425 if(lar_unknown_nchan!=0)
445 if( (tile_actHitCnt->
Size()) != 0 )
451 double Etot = hit->energyTotal();
452 double Eem = hit->energy(0);
453 double Enonem = hit->energy(1);
454 double Evis = Eem + Enonem;
462 cnt->push_back(calibCell);
490 ATH_MSG_DEBUG(
"Active CalibHit doesn't respect to any TileCell - "
491 <<
"create dummy TileCell to store energy " );
496 cnt->push_back(calibCell);
518 ++tile_unknown_nchan;
532 if(tile_unknown_nchan!=0)
548 if( (tile_inactHitCnt->
Size()) != 0 )
555 double Etot = hit->energyTotal();
556 double Eem = hit->energy(0);
557 double Enonem = hit->energy(1);
558 double Evis = Eem + Enonem;
566 cnt->push_back(calibCell);
594 ATH_MSG_DEBUG(
"Inactive CalibHit doesn't respect to any TileCell - "
595 <<
"create dummy TileCell to store energy " );
600 cnt->push_back(calibCell);
622 ++tile_unknown_nchan;
636 if(tile_unknown_nchan!=0)
688 return StatusCode::SUCCESS;
696 return StatusCode::SUCCESS;
704 <<
"Visible = "<<(*
energy)[1] <<
" | "
705 <<
"Em = "<<(*
energy)[2] <<
" | "
706 <<
"NonEm = "<<(*
energy)[3] );
def retrieve(aClass, aKey=None)
virtual ~CalibHitToCaloCell()
std::vector< LArCell * > m_Cells_Vis
StatusCode initialize() override
std::vector< Identifier > ID
bool is_lar(Identifier id) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::string m_tileActiveHitCnt
std::vector< double > Energy
void setHasCalo(const CaloCell_ID::SUBCALO caloNum)
set which calo has been filled.
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
const CaloDetDescrElement * get_element(const Identifier &cellId) const
get element by its identifier
std::vector< LArCell * > m_Cells_Tot
std::vector< LArCell * > m_Cells_Em
#define ATH_MSG_VERBOSE(x)
bool is_tile(const Identifier id) const
test if the id belongs to the Tiles
virtual void setEnergy(float energy)
set energy
bool is_hec(const Identifier id) const
test if the id belongs to the HEC
std::vector< LArCell * > m_Cells_NonEm
Definition of CaloDetDescrManager.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
StatusCode finalize() override
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
bool is_em(const Identifier id) const
test if the id belongs to LArEM
void test_energy(Energy *)
bool is_fcal(const Identifier id) const
test if the id belongs to the FCAL - true also for MiniFCAL
::StatusCode StatusCode
StatusCode definition for legacy code.
int sub_calo(const Identifier id) const
returns an int taken from SUBCALO enum and describing the subCalo to which the Id belongs.
std::string m_caloCell_Em
const CaloCell_ID * m_caloCell_ID
std::string m_caloCell_Vis
Class to store calorimeter calibration hit.
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
StatusCode initialize(bool used=true)
Data object for LAr calorimeter readout cell.
const CaloDM_ID * m_caloDM_ID
Container class for CaloCell.
std::string m_caloCell_NonEm
virtual void setEnergy(float ene) override final
set total energy, reset eneDiff to zero
StatusCode execute() override
This class provides the client interface for accessing the detector description information common to...
CalibHitToCaloCell(const std::string &name, ISvcLocator *pSvcLocator)
void push_back(CaloCell *)
reimplementation of const push_back
std::string m_tileDMHitCnt
std::string m_larInactHitCnt
std::string m_larDMHitCnt
std::string m_larActHitCnt
std::string m_caloCell_Tot
std::string m_tileInactiveHitCnt