Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
#include <ISF_HitAnalysis.h>
|
| ISF_HitAnalysis (const std::string &name, ISvcLocator *pSvcLocator) |
|
| ~ISF_HitAnalysis () |
|
virtual StatusCode initialize | ATLAS_NOT_THREAD_SAFE () override |
|
virtual StatusCode finalize | ATLAS_NOT_THREAD_SAFE () override |
|
virtual StatusCode | execute () override |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
ServiceHandle< IGeoModelSvc > | m_geoModel |
|
SG::ReadCondHandleKey< CaloDetDescrManager > | m_caloMgrKey |
|
SG::ReadCondHandleKey< ILArfSampl > | m_fSamplKey |
|
SG::ReadCondHandleKey< TileSamplingFraction > | m_tileSamplingFractionKey |
| Name of TileSamplingFraction in condition store. More...
|
|
ServiceHandle< TileCablingSvc > | m_tileCablingSvc |
| Name of Tile cabling service. More...
|
|
StringProperty | m_ntupleFileName {this, "NtupleFileName", "ISF_HitAnalysis"} |
|
StringProperty | m_ntupleTreeName {this, "NtupleTreeName", "CaloHitAna"} |
|
StringProperty | m_metadataTreeName {this, "MetadataTreeName", "MetaData"} |
|
StringProperty | m_geoFileName {this, "GeoFileName", "ISF_Geometry"} |
|
IntegerProperty | m_NtruthParticles {this, "NTruthParticles", 1, "Number of truth particles saved from the truth collection, -1 to save all"} |
|
ServiceHandle< ITHistSvc > | m_thistSvc |
|
PublicToolHandle< Trk::ITimedExtrapolator > | m_extrapolator {this, "Extrapolator", {}} |
|
PublicToolHandle< ICaloCoordinateTool > | m_calo_tb_coord {this, "CaloCoordinateTool", "TBCaloCoordinate"} |
|
StringProperty | m_caloEntranceName {this, "CaloEntrance", ""} |
|
PublicToolHandle< IFastCaloSimCaloExtrapolation > | m_FastCaloSimCaloExtrapolation {this, "FastCaloSimCaloExtrapolation", {} } |
| The FastCaloSimCaloExtrapolation tool. More...
|
|
DoubleProperty | m_CaloBoundaryR {this, "CaloBoundaryR", 1148} |
|
DoubleProperty | m_CaloBoundaryZ {this, "CaloBoundaryZ", 3550} |
|
DoubleProperty | m_calomargin {this, "CaloMargin", 0.0} |
|
BooleanProperty | m_saveAllBranches {this,"SaveAllBranches", false} |
|
BooleanProperty | m_doAllCells {this, "DoAllCells", false} |
|
BooleanProperty | m_doClusterInfo {this, "DoClusterInfo", false} |
|
BooleanProperty | m_doLayers {this, "DoLayers", false} |
|
BooleanProperty | m_doLayerSums {this, "DoLayerSums", true} |
|
BooleanProperty | m_doG4Hits {this, "DoG4Hits", false} |
|
IntegerProperty | m_TimingCut {this, "TimingCut", 999999} |
|
StringProperty | m_MC_DIGI_PARAM {this, "MetaDataDigi", "/Digitization/Parameters"} |
|
StringProperty | m_MC_SIM_PARAM {this, "MetaDataSim", "/Simulation/Parameters"} |
|
const LArEM_ID * | m_larEmID {} |
|
const LArFCAL_ID * | m_larFcalID {} |
|
const LArHEC_ID * | m_larHecID {} |
|
const TileID * | m_tileID {} |
|
const TileHWID * | m_tileHWID {} |
|
const TileCablingService * | m_tileCabling {} |
|
const TileDetDescrManager * | m_tileMgr {} |
|
std::vector< float > * | m_hit_x {} |
| Simple variables by Ketevi. More...
|
|
std::vector< float > * | m_hit_y {} |
|
std::vector< float > * | m_hit_z {} |
|
std::vector< float > * | m_hit_energy {} |
|
std::vector< float > * | m_hit_time {} |
|
std::vector< Long64_t > * | m_hit_identifier {} |
|
std::vector< Long64_t > * | m_hit_cellidentifier {} |
|
std::vector< bool > * | m_islarbarrel {} |
|
std::vector< bool > * | m_islarendcap {} |
|
std::vector< bool > * | m_islarhec {} |
|
std::vector< bool > * | m_islarfcal {} |
|
std::vector< bool > * | m_istile {} |
|
std::vector< int > * | m_hit_sampling {} |
|
std::vector< float > * | m_hit_samplingfraction {} |
|
std::vector< float > * | m_truth_energy {} |
|
std::vector< float > * | m_truth_px {} |
|
std::vector< float > * | m_truth_py {} |
|
std::vector< float > * | m_truth_pz {} |
|
std::vector< int > * | m_truth_pdg {} |
|
std::vector< int > * | m_truth_barcode {} |
|
std::vector< int > * | m_truth_vtxbarcode {} |
|
std::vector< float > * | m_cluster_energy {} |
|
std::vector< float > * | m_cluster_eta {} |
|
std::vector< float > * | m_cluster_phi {} |
|
std::vector< unsigned > * | m_cluster_size {} |
|
std::vector< std::vector< Long64_t > > * | m_cluster_cellID {} |
|
std::vector< Long64_t > * | m_cell_identifier {} |
|
std::vector< float > * | m_cell_energy {} |
|
std::vector< int > * | m_cell_sampling {} |
|
std::vector< float > * | m_g4hit_energy {} |
|
std::vector< float > * | m_g4hit_time {} |
|
std::vector< Long64_t > * | m_g4hit_identifier {} |
|
std::vector< Long64_t > * | m_g4hit_cellidentifier {} |
|
std::vector< float > * | m_g4hit_samplingfraction {} |
|
std::vector< int > * | m_g4hit_sampling {} |
|
FCS_matchedcellvector * | m_oneeventcells = nullptr |
|
FCS_matchedcellvector * | m_layercells [MAX_LAYER] {} |
|
Float_t | m_total_cell_e {} |
|
Float_t | m_total_hit_e {} |
|
Float_t | m_total_g4hit_e {} |
|
std::vector< Float_t > * | m_final_cell_energy {} |
|
std::vector< Float_t > * | m_final_hit_energy {} |
|
std::vector< Float_t > * | m_final_g4hit_energy {} |
|
TTree * | m_tree {} |
|
double | m_eta_calo_surf {} |
|
double | m_phi_calo_surf {} |
|
double | m_d_calo_surf {} |
|
double | m_ptruth_eta {} |
|
double | m_ptruth_phi {} |
|
double | m_ptruth_e {} |
|
double | m_ptruth_et {} |
|
double | m_ptruth_pt {} |
|
double | m_ptruth_p {} |
|
int | m_pdgid {} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_eta {} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_phi {} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_r {} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_z {} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_detaBorder {} |
|
std::vector< std::vector< bool > > * | m_newTTC_entrance_OK {} |
|
std::vector< std::vector< float > > * | m_newTTC_back_eta {} |
|
std::vector< std::vector< float > > * | m_newTTC_back_phi {} |
|
std::vector< std::vector< float > > * | m_newTTC_back_r {} |
|
std::vector< std::vector< float > > * | m_newTTC_back_z {} |
|
std::vector< std::vector< float > > * | m_newTTC_back_detaBorder {} |
|
std::vector< std::vector< bool > > * | m_newTTC_back_OK {} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_eta {} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_phi {} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_r {} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_z {} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_detaBorder {} |
|
std::vector< std::vector< bool > > * | m_newTTC_mid_OK {} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_eta {} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_phi {} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_r {} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_z {} |
|
std::vector< float > * | m_newTTC_Angle3D {} |
|
std::vector< float > * | m_newTTC_AngleEta {} |
|
std::vector< float > * | m_MuonEntryLayer_E {} |
|
std::vector< float > * | m_MuonEntryLayer_px {} |
|
std::vector< float > * | m_MuonEntryLayer_py {} |
|
std::vector< float > * | m_MuonEntryLayer_pz {} |
|
std::vector< float > * | m_MuonEntryLayer_x {} |
|
std::vector< float > * | m_MuonEntryLayer_y {} |
|
std::vector< float > * | m_MuonEntryLayer_z {} |
|
std::vector< int > * | m_MuonEntryLayer_pdg {} |
|
CxxUtils::CachedPointer< const Trk::TrackingVolume > | m_caloEntrance |
| The new Extrapolator setup. More...
|
|
Trk::PdgToParticleHypothesis | m_pdgToParticleHypothesis |
|
CaloCell_ID_FCS::CaloSample | m_sample_calo_surf {CaloCell_ID_FCS::noSample} |
| End new Extrapolator setup. More...
|
|
std::vector< CaloCell_ID_FCS::CaloSample > | m_surfacelist |
|
bool | m_layerCaloOK [CaloCell_ID_FCS::MaxSample][3] {} |
|
double | m_letaCalo [CaloCell_ID_FCS::MaxSample][3] {} |
|
double | m_lphiCalo [CaloCell_ID_FCS::MaxSample][3] {} |
|
double | m_lrCalo [CaloCell_ID_FCS::MaxSample][3] {} |
|
double | m_lzCalo [CaloCell_ID_FCS::MaxSample][3] {} |
|
double | m_dCalo [CaloCell_ID_FCS::MaxSample][3] {} |
|
double | m_distetaCaloBorder [CaloCell_ID_FCS::MaxSample][3] {} |
|
ServiceHandle< IPartPropSvc > | m_partPropSvc {this, "PartPropSvc", "PartPropSvc"} |
| Handle on the particle property service. More...
|
|
HepPDT::ParticleDataTable * | m_particleDataTable {} |
|
DataObjIDColl | m_extendedExtraObjects |
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
Definition at line 65 of file ISF_HitAnalysis.h.
◆ StoreGateSvc_t
◆ ISF_HitAnalysis()
ISF_HitAnalysis::ISF_HitAnalysis |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~ISF_HitAnalysis()
ISF_HitAnalysis::~ISF_HitAnalysis |
( |
| ) |
|
|
default |
◆ ATLAS_NOT_THREAD_SAFE() [1/2]
virtual StatusCode initialize ISF_HitAnalysis::ATLAS_NOT_THREAD_SAFE |
( |
| ) |
|
|
overridevirtual |
◆ ATLAS_NOT_THREAD_SAFE() [2/2]
virtual StatusCode finalize ISF_HitAnalysis::ATLAS_NOT_THREAD_SAFE |
( |
| ) |
|
|
overridevirtual |
◆ caloHits()
Definition at line 1328 of file ISF_HitAnalysis.cxx.
1331 ATH_MSG_DEBUG (
"[ fastCaloSim transport ] processing particle "<<
part.pdg_id() );
1333 std::vector<Trk::HitInfo>*
hitVector =
new std::vector<Trk::HitInfo>;
1335 int pdgId =
part.pdg_id();
1346 auto vtx =
part.production_vertex();
1351 pos =
Amg::Vector3D( vtx->position().x(),vtx->position().y(), vtx->position().z());
1355 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] starting transport from position eta="<<
pos.eta()<<
" phi="<<
pos.phi()<<
" d="<<
pos.mag()<<
" pT="<<
mom.perp() );
1362 double freepath = -1.;
1365 double tDec = freepath > 0. ? freepath : -1.;
1399 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] before calo entrance ");
1411 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] after calo entrance ");
1413 std::unique_ptr<const Trk::TrackParameters> caloEntry =
nullptr;
1417 std::vector<Trk::HitInfo>* dummyHitVector =
nullptr;
1439 caloEntry = inputPar.uniqueClone();
1442 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] after calo caloEntry ");
1446 std::unique_ptr<const Trk::TrackParameters> eParameters =
nullptr;
1451 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] starting Calo transport from position eta="<<caloEntry->
position().eta()<<
" phi="<<caloEntry->
position().phi()<<
" d="<<caloEntry->
position().mag() );
1463 eParameters =
m_extrapolator->extrapolateWithPathLimit(*caloEntry,
1472 if (eParameters)
hitVector->push_back(
Trk::HitInfo(std::move(eParameters),timeLim.time,nextGeoID,0.));
1479 while (it < hitVector->
end() )
1483 ATH_MSG_DEBUG(
" HIT: layer="<<
sample<<
" sample="<<
sample-3000<<
" eta="<<hitPos.eta()<<
" phi="<<hitPos.phi()<<
" d="<<hitPos.mag());
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode ISF_HitAnalysis::execute |
( |
| ) |
|
|
overridevirtual |
Definition at line 481 of file ISF_HitAnalysis.cxx.
489 return StatusCode::FAILURE;
496 ATH_CHECK( tileSamplingFraction.isValid() );
501 vectest.SetPtEtaPhi(1.,1.,1.);
539 std::map<Long64_t, FCS_cell>
cells;
540 std::map<Long64_t, std::vector<FCS_g4hit> > g4hits;
541 std::map<Long64_t, std::vector<FCS_hit> >
hits;
601 if (
sc.isFailure()) {
607 m_hit_x->push_back( (*it)->x() );
608 m_hit_y->push_back( (*it)->y() );
609 m_hit_z->push_back( (*it)->z() );
614 bool larbarrel=
false;
615 bool larendcap=
false;
637 sampfrac = tileSamplingFraction->getSamplingFraction(drawerIdx,
channel);
658 Int_t tile_sampling = -1;
662 if(tile_sampling!= -1) sampling = tile_sampling;
684 sc =
evtStore()->retrieve(mcEvent,
"TruthEvent");
690 if(!mcEvent->
empty()) {
693 int particles_size=(*mcEvent->
begin())->particles_size();
695 loopEnd = particles_size;
698 for (
const auto&
part: *(*mcEvent->
begin()))
700 for (
const auto part: *(*mcEvent->
begin()))
704 ATH_MSG_DEBUG(
"Number truth particles="<<particles_size<<
" loopEnd="<<loopEnd);
707 if (particleIndex>loopEnd)
break;
715 moment.SetXYZ(
part->momentum().px(),
part->momentum().py(),
part->momentum().pz());
716 TVector3 direction=moment.Unit();
728 if((
part)->production_vertex()) {
729 truth.set_vertex((
part)->production_vertex()->position().
x(), (
part)->production_vertex()->position().
y(), (
part)->production_vertex()->position().
z());
731 truth.set_vertex(direction.X(),direction.Y(),direction.Z());
732 ATH_MSG_WARNING(
"No particle production vetext, use VERTEX from direction: x "<<direction.X()<<
" y "<<direction.Y()<<
" z "<<direction.Z());
735 if( std::abs(direction.X()-truth.vertex().X())>0.1 || std::abs(direction.Y()-truth.vertex().Y())>0.1 || std::abs(direction.Z()-truth.vertex().Z())>0.1 ) {
736 ATH_MSG_WARNING(
"VERTEX from direction: x "<<direction.X()<<
" y "<<direction.Y()<<
" z "<<direction.Z());
737 ATH_MSG_WARNING(
"but VERTEX from hepmc: x "<<truth.vertex().X()<<
" y "<<truth.vertex().Y()<<
" z "<<truth.vertex().Z());
759 std::vector<float> eta_vec_ENT;
760 std::vector<float> phi_vec_ENT;
761 std::vector<float> r_vec_ENT;
762 std::vector<float> z_vec_ENT;
763 std::vector<float> detaBorder_vec_ENT;
764 std::vector<bool> OK_vec_ENT;
766 std::vector<float> eta_vec_EXT;
767 std::vector<float> phi_vec_EXT;
768 std::vector<float> r_vec_EXT;
769 std::vector<float> z_vec_EXT;
770 std::vector<float> detaBorder_vec_EXT;
771 std::vector<bool> OK_vec_EXT;
773 std::vector<float> eta_vec_MID;
774 std::vector<float> phi_vec_MID;
775 std::vector<float> r_vec_MID;
776 std::vector<float> z_vec_MID;
777 std::vector<float> detaBorder_vec_MID;
778 std::vector<bool> OK_vec_MID;
841 sc =
evtStore()->retrieve(MuonEntry,
"MuonEntryLayer");
863 std::string clusterContainerName =
"CaloCalTopoClusters";
864 sc =
evtStore()->retrieve(theClusters, clusterContainerName);
865 if (
sc.isFailure()) {
866 ATH_MSG_WARNING(
" Couldn't get cluster container '" << clusterContainerName <<
"'");
867 return StatusCode::SUCCESS;
871 for ( ; itrClus!=itrLastClus; ++itrClus){
889 unsigned cellcount = 0;
890 std::vector<Long64_t> cellIDs_in_cluster;
893 for ( ;cellIter !=cellIterEnd;cellIter++) {
896 cellIDs_in_cluster.push_back(
cell->ID().get_compact());
897 float EnergyCell=
cell->energy();
906 sc =
evtStore()->retrieve(cellColl,
"AllCalo");
917 for ( ; itrCell!=itrLastCell; ++itrCell)
925 else if (calo_dd_man->
get_element((*itrCell)->ID()))
937 std::string lArKey [4] = {
"LArHitEMB",
"LArHitEMEC",
"LArHitFCAL",
"LArHitHEC"};
938 for (
unsigned int i=0;
i<4;
i++)
946 for (hi=(*iter).begin();hi!=(*iter).end();++hi) {
948 const LArHit* larHit = *hi;
956 float larsampfrac=fSampl->
FSAMPL(larhitid);
965 ATH_MSG_INFO(
"Read "<<hitnumber<<
" G4Hits from "<<lArKey[
i]);
990 float tilesampfrac = tileSamplingFraction->getSamplingFraction(drawerIdx,
channel);
993 for (
int tilesubhit_i = 0; tilesubhit_i<(*i_hit).size(); tilesubhit_i++)
1004 ATH_MSG_INFO(
"Read "<<hitnumber<<
" G4Hits from TileHitVec");
1014 one_cell.cell_identifier = (*m_cell_identifier)[cell_i];
1015 one_cell.sampling = (*m_cell_sampling)[cell_i];
1016 one_cell.energy = (*m_cell_energy)[cell_i];
1017 one_cell.center_x = 0.0;
1018 one_cell.center_y = 0.0;
1019 one_cell.center_z = 0.0;
1020 cells.insert(std::pair<Long64_t, FCS_cell>(one_cell.cell_identifier, one_cell));
1042 one_g4hit.identifier = (*m_g4hit_identifier)[g4hit_i];
1043 one_g4hit.cell_identifier = (*m_g4hit_cellidentifier)[g4hit_i];
1044 one_g4hit.sampling = (*m_g4hit_sampling)[g4hit_i];
1045 one_g4hit.hit_time = (*m_g4hit_time)[g4hit_i];
1047 if (one_g4hit.sampling >= 12 && one_g4hit.sampling <= 20)
1051 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] * (*m_g4hit_samplingfraction)[g4hit_i];
1053 else one_g4hit.hit_energy = 0.;
1057 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] / (*m_g4hit_samplingfraction)[g4hit_i];
1059 g4hits.insert(std::pair<Long64_t, std::vector<FCS_g4hit> >(one_g4hit.cell_identifier, std::vector<FCS_g4hit>(1, one_g4hit)));
1064 one_g4hit.identifier = (*m_g4hit_identifier)[g4hit_i];
1065 one_g4hit.cell_identifier = (*m_g4hit_cellidentifier)[g4hit_i];
1066 one_g4hit.sampling = (*m_g4hit_sampling)[g4hit_i];
1067 one_g4hit.hit_time = (*m_g4hit_time)[g4hit_i];
1068 if (one_g4hit.sampling >= 12 && one_g4hit.sampling <= 20)
1072 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] * (*m_g4hit_samplingfraction)[g4hit_i];
1074 else one_g4hit.hit_energy = 0.;
1078 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] / (*m_g4hit_samplingfraction)[g4hit_i];
1080 g4hits[(*m_g4hit_cellidentifier)[g4hit_i]].push_back(one_g4hit);
1096 one_hit.identifier = (*m_hit_identifier)[hit_i];
1097 one_hit.cell_identifier = (*m_hit_cellidentifier)[hit_i];
1098 one_hit.sampling = (*m_hit_sampling)[hit_i];
1100 if (one_hit.sampling >= 12 && one_hit.sampling <= 20)
1104 one_hit.hit_energy = (*m_hit_energy)[hit_i] * (*m_hit_samplingfraction)[hit_i];
1106 else one_hit.hit_energy = 0.;
1110 one_hit.hit_energy = (*m_hit_energy)[hit_i] / (*m_hit_samplingfraction)[hit_i];
1113 one_hit.hit_time = (*m_hit_time)[hit_i];
1114 one_hit.hit_x = (*m_hit_x)[hit_i];
1115 one_hit.hit_y = (*m_hit_y)[hit_i];
1116 one_hit.hit_z = (*m_hit_z)[hit_i];
1117 hits.insert(std::pair<Long64_t, std::vector<FCS_hit> >(one_hit.cell_identifier, std::vector<FCS_hit>(1, one_hit)));
1122 one_hit.identifier = (*m_hit_identifier)[hit_i];
1123 one_hit.cell_identifier = (*m_hit_cellidentifier)[hit_i];
1124 one_hit.sampling = (*m_hit_sampling)[hit_i];
1126 if (one_hit.sampling >= 12 && one_hit.sampling <= 20)
1130 one_hit.hit_energy = (*m_hit_energy)[hit_i] * (*m_hit_samplingfraction)[hit_i];
1132 else one_hit.hit_energy = 0.;
1136 one_hit.hit_energy = (*m_hit_energy)[hit_i] / (*m_hit_samplingfraction)[hit_i];
1139 one_hit.hit_time = (*m_hit_time)[hit_i];
1140 one_hit.hit_x = (*m_hit_x)[hit_i];
1141 one_hit.hit_y = (*m_hit_y)[hit_i];
1142 one_hit.hit_z = (*m_hit_z)[hit_i];
1143 hits[(*m_hit_cellidentifier)[hit_i]].push_back(one_hit);
1150 one_matchedcell.
clear();
1152 one_matchedcell.
cell =
it->second;
1154 std::map<Long64_t, std::vector<FCS_hit> >
::iterator it2 =
hits.find(
it->first);
1155 if (it2 !=
hits.end())
1158 one_matchedcell.
hit = it2->second;
1164 one_matchedcell.
hit.clear();
1167 std::map<Long64_t, std::vector<FCS_g4hit> >
::iterator it3 = g4hits.find(
it->first);
1168 if (it3 != g4hits.end())
1170 one_matchedcell.
g4hit = it3->second;
1176 one_matchedcell.
g4hit.clear();
1185 ATH_MSG_DEBUG(
"ISF_HitAnalysis Check after cells: " <<
cells.size() <<
" " << g4hits.size() <<
" " <<
hits.size());
1189 one_matchedcell.
clear();
1192 if (!
it->second.empty())
1206 one_matchedcell.
hit =
it->second;
1207 std::map<Long64_t, std::vector<FCS_g4hit> >
::iterator it3 = g4hits.find(
it->first);
1208 if (it3 != g4hits.end())
1210 one_matchedcell.
g4hit = it3->second;
1216 one_matchedcell.
g4hit.clear();
1224 ATH_MSG_DEBUG(
"ISF_HitAnalysis Check after hits: " <<
cells.size() <<
" " << g4hits.size() <<
" " <<
hits.size());
1225 for (std::map<Long64_t, std::vector<FCS_g4hit> >::
iterator it = g4hits.begin();
it != g4hits.end();)
1227 one_matchedcell.
clear();
1229 if (!
it->second.empty())
1243 one_matchedcell.
g4hit =
it->second;
1244 one_matchedcell.
hit.clear();
1267 for (
unsigned int cellindex = 0; cellindex <
m_layercells[
i]->
size(); cellindex++)
1324 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ extraOutputDeps()
const DataObjIDColl & AthAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 50 of file AthAlgorithm.cxx.
57 return Algorithm::extraOutputDeps();
◆ extrapolate()
◆ extrapolate_to_ID()
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_calo_tb_coord
◆ m_CaloBoundaryR
DoubleProperty ISF_HitAnalysis::m_CaloBoundaryR {this, "CaloBoundaryR", 1148} |
|
private |
◆ m_CaloBoundaryZ
DoubleProperty ISF_HitAnalysis::m_CaloBoundaryZ {this, "CaloBoundaryZ", 3550} |
|
private |
◆ m_caloEntrance
◆ m_caloEntranceName
StringProperty ISF_HitAnalysis::m_caloEntranceName {this, "CaloEntrance", ""} |
|
private |
◆ m_calomargin
DoubleProperty ISF_HitAnalysis::m_calomargin {this, "CaloMargin", 0.0} |
|
private |
◆ m_caloMgrKey
Initial value:{ this
, "CaloDetDescrManager"
, "CaloDetDescrManager"
, "SG Key for CaloDetDescrManager in the Condition Store" }
Definition at line 86 of file ISF_HitAnalysis.h.
◆ m_cell_energy
std::vector<float>* ISF_HitAnalysis::m_cell_energy {} |
|
private |
◆ m_cell_identifier
std::vector<Long64_t>* ISF_HitAnalysis::m_cell_identifier {} |
|
private |
◆ m_cell_sampling
std::vector<int>* ISF_HitAnalysis::m_cell_sampling {} |
|
private |
◆ m_cluster_cellID
std::vector<std::vector<Long64_t > >* ISF_HitAnalysis::m_cluster_cellID {} |
|
private |
◆ m_cluster_energy
std::vector<float>* ISF_HitAnalysis::m_cluster_energy {} |
|
private |
◆ m_cluster_eta
std::vector<float>* ISF_HitAnalysis::m_cluster_eta {} |
|
private |
◆ m_cluster_phi
std::vector<float>* ISF_HitAnalysis::m_cluster_phi {} |
|
private |
◆ m_cluster_size
std::vector<unsigned>* ISF_HitAnalysis::m_cluster_size {} |
|
private |
◆ m_d_calo_surf
double ISF_HitAnalysis::m_d_calo_surf {} |
|
private |
◆ m_dCalo
◆ m_detStore
◆ m_distetaCaloBorder
◆ m_doAllCells
BooleanProperty ISF_HitAnalysis::m_doAllCells {this, "DoAllCells", false} |
|
private |
◆ m_doClusterInfo
BooleanProperty ISF_HitAnalysis::m_doClusterInfo {this, "DoClusterInfo", false} |
|
private |
◆ m_doG4Hits
BooleanProperty ISF_HitAnalysis::m_doG4Hits {this, "DoG4Hits", false} |
|
private |
◆ m_doLayers
BooleanProperty ISF_HitAnalysis::m_doLayers {this, "DoLayers", false} |
|
private |
◆ m_doLayerSums
BooleanProperty ISF_HitAnalysis::m_doLayerSums {this, "DoLayerSums", true} |
|
private |
◆ m_eta_calo_surf
double ISF_HitAnalysis::m_eta_calo_surf {} |
|
private |
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_extrapolator
◆ m_FastCaloSimCaloExtrapolation
◆ m_final_cell_energy
std::vector<Float_t>* ISF_HitAnalysis::m_final_cell_energy {} |
|
private |
◆ m_final_g4hit_energy
std::vector<Float_t>* ISF_HitAnalysis::m_final_g4hit_energy {} |
|
private |
◆ m_final_hit_energy
std::vector<Float_t>* ISF_HitAnalysis::m_final_hit_energy {} |
|
private |
◆ m_fSamplKey
Initial value:{this,
"fSamplKey", "LArfSamplSym", "SG Key of LArfSampl object"}
Definition at line 90 of file ISF_HitAnalysis.h.
◆ m_g4hit_cellidentifier
std::vector<Long64_t>* ISF_HitAnalysis::m_g4hit_cellidentifier {} |
|
private |
◆ m_g4hit_energy
std::vector<float>* ISF_HitAnalysis::m_g4hit_energy {} |
|
private |
◆ m_g4hit_identifier
std::vector<Long64_t>* ISF_HitAnalysis::m_g4hit_identifier {} |
|
private |
◆ m_g4hit_sampling
std::vector<int>* ISF_HitAnalysis::m_g4hit_sampling {} |
|
private |
◆ m_g4hit_samplingfraction
std::vector<float>* ISF_HitAnalysis::m_g4hit_samplingfraction {} |
|
private |
◆ m_g4hit_time
std::vector<float>* ISF_HitAnalysis::m_g4hit_time {} |
|
private |
◆ m_geoFileName
StringProperty ISF_HitAnalysis::m_geoFileName {this, "GeoFileName", "ISF_Geometry"} |
|
private |
◆ m_geoModel
Initial value:{this,
"GeoModelSvc", "GeoModelSvc", "GeoModel service"}
Definition at line 84 of file ISF_HitAnalysis.h.
◆ m_hit_cellidentifier
std::vector<Long64_t>* ISF_HitAnalysis::m_hit_cellidentifier {} |
|
private |
◆ m_hit_energy
std::vector<float>* ISF_HitAnalysis::m_hit_energy {} |
|
private |
◆ m_hit_identifier
std::vector<Long64_t>* ISF_HitAnalysis::m_hit_identifier {} |
|
private |
◆ m_hit_sampling
std::vector<int>* ISF_HitAnalysis::m_hit_sampling {} |
|
private |
◆ m_hit_samplingfraction
std::vector<float>* ISF_HitAnalysis::m_hit_samplingfraction {} |
|
private |
◆ m_hit_time
std::vector<float>* ISF_HitAnalysis::m_hit_time {} |
|
private |
◆ m_hit_x
std::vector<float>* ISF_HitAnalysis::m_hit_x {} |
|
private |
◆ m_hit_y
std::vector<float>* ISF_HitAnalysis::m_hit_y {} |
|
private |
◆ m_hit_z
std::vector<float>* ISF_HitAnalysis::m_hit_z {} |
|
private |
◆ m_islarbarrel
std::vector<bool>* ISF_HitAnalysis::m_islarbarrel {} |
|
private |
◆ m_islarendcap
std::vector<bool>* ISF_HitAnalysis::m_islarendcap {} |
|
private |
◆ m_islarfcal
std::vector<bool>* ISF_HitAnalysis::m_islarfcal {} |
|
private |
◆ m_islarhec
std::vector<bool>* ISF_HitAnalysis::m_islarhec {} |
|
private |
◆ m_istile
std::vector<bool>* ISF_HitAnalysis::m_istile {} |
|
private |
◆ m_larEmID
◆ m_larFcalID
◆ m_larHecID
◆ m_layerCaloOK
◆ m_layercells
◆ m_letaCalo
◆ m_lphiCalo
◆ m_lrCalo
◆ m_lzCalo
◆ m_MC_DIGI_PARAM
StringProperty ISF_HitAnalysis::m_MC_DIGI_PARAM {this, "MetaDataDigi", "/Digitization/Parameters"} |
|
private |
◆ m_MC_SIM_PARAM
StringProperty ISF_HitAnalysis::m_MC_SIM_PARAM {this, "MetaDataSim", "/Simulation/Parameters"} |
|
private |
◆ m_metadataTreeName
StringProperty ISF_HitAnalysis::m_metadataTreeName {this, "MetadataTreeName", "MetaData"} |
|
private |
◆ m_MuonEntryLayer_E
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_E {} |
|
private |
◆ m_MuonEntryLayer_pdg
std::vector<int>* ISF_HitAnalysis::m_MuonEntryLayer_pdg {} |
|
private |
◆ m_MuonEntryLayer_px
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_px {} |
|
private |
◆ m_MuonEntryLayer_py
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_py {} |
|
private |
◆ m_MuonEntryLayer_pz
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_pz {} |
|
private |
◆ m_MuonEntryLayer_x
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_x {} |
|
private |
◆ m_MuonEntryLayer_y
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_y {} |
|
private |
◆ m_MuonEntryLayer_z
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_z {} |
|
private |
◆ m_newTTC_Angle3D
std::vector<float>* ISF_HitAnalysis::m_newTTC_Angle3D {} |
|
private |
◆ m_newTTC_AngleEta
std::vector<float>* ISF_HitAnalysis::m_newTTC_AngleEta {} |
|
private |
◆ m_newTTC_back_detaBorder
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_detaBorder {} |
|
private |
◆ m_newTTC_back_eta
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_eta {} |
|
private |
◆ m_newTTC_back_OK
std::vector<std::vector<bool> >* ISF_HitAnalysis::m_newTTC_back_OK {} |
|
private |
◆ m_newTTC_back_phi
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_phi {} |
|
private |
◆ m_newTTC_back_r
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_r {} |
|
private |
◆ m_newTTC_back_z
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_z {} |
|
private |
◆ m_newTTC_entrance_detaBorder
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_detaBorder {} |
|
private |
◆ m_newTTC_entrance_eta
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_eta {} |
|
private |
◆ m_newTTC_entrance_OK
std::vector<std::vector<bool> >* ISF_HitAnalysis::m_newTTC_entrance_OK {} |
|
private |
◆ m_newTTC_entrance_phi
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_phi {} |
|
private |
◆ m_newTTC_entrance_r
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_r {} |
|
private |
◆ m_newTTC_entrance_z
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_z {} |
|
private |
◆ m_newTTC_IDCaloBoundary_eta
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_eta {} |
|
private |
◆ m_newTTC_IDCaloBoundary_phi
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_phi {} |
|
private |
◆ m_newTTC_IDCaloBoundary_r
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_r {} |
|
private |
◆ m_newTTC_IDCaloBoundary_z
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_z {} |
|
private |
◆ m_newTTC_mid_detaBorder
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_detaBorder {} |
|
private |
◆ m_newTTC_mid_eta
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_eta {} |
|
private |
◆ m_newTTC_mid_OK
std::vector<std::vector<bool> >* ISF_HitAnalysis::m_newTTC_mid_OK {} |
|
private |
◆ m_newTTC_mid_phi
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_phi {} |
|
private |
◆ m_newTTC_mid_r
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_r {} |
|
private |
◆ m_newTTC_mid_z
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_z {} |
|
private |
◆ m_NtruthParticles
IntegerProperty ISF_HitAnalysis::m_NtruthParticles {this, "NTruthParticles", 1, "Number of truth particles saved from the truth collection, -1 to save all"} |
|
private |
◆ m_ntupleFileName
StringProperty ISF_HitAnalysis::m_ntupleFileName {this, "NtupleFileName", "ISF_HitAnalysis"} |
|
private |
◆ m_ntupleTreeName
StringProperty ISF_HitAnalysis::m_ntupleTreeName {this, "NtupleTreeName", "CaloHitAna"} |
|
private |
◆ m_oneeventcells
◆ m_particleDataTable
HepPDT::ParticleDataTable* ISF_HitAnalysis::m_particleDataTable {} |
|
private |
◆ m_partPropSvc
ServiceHandle<IPartPropSvc> ISF_HitAnalysis::m_partPropSvc {this, "PartPropSvc", "PartPropSvc"} |
|
private |
◆ m_pdgid
int ISF_HitAnalysis::m_pdgid {} |
|
private |
◆ m_pdgToParticleHypothesis
◆ m_phi_calo_surf
double ISF_HitAnalysis::m_phi_calo_surf {} |
|
private |
◆ m_ptruth_e
double ISF_HitAnalysis::m_ptruth_e {} |
|
private |
◆ m_ptruth_et
double ISF_HitAnalysis::m_ptruth_et {} |
|
private |
◆ m_ptruth_eta
double ISF_HitAnalysis::m_ptruth_eta {} |
|
private |
◆ m_ptruth_p
double ISF_HitAnalysis::m_ptruth_p {} |
|
private |
◆ m_ptruth_phi
double ISF_HitAnalysis::m_ptruth_phi {} |
|
private |
◆ m_ptruth_pt
double ISF_HitAnalysis::m_ptruth_pt {} |
|
private |
◆ m_sample_calo_surf
◆ m_saveAllBranches
BooleanProperty ISF_HitAnalysis::m_saveAllBranches {this,"SaveAllBranches", false} |
|
private |
◆ m_surfacelist
◆ m_thistSvc
Initial value:{ this,
"THistSvc", "THistSvc", "Tile histogramming service"}
Definition at line 107 of file ISF_HitAnalysis.h.
◆ m_tileCabling
◆ m_tileCablingSvc
Initial value:{ this,
"TileCablingSvc", "TileCablingSvc", "Tile cabling service"}
Name of Tile cabling service.
Definition at line 100 of file ISF_HitAnalysis.h.
◆ m_tileHWID
◆ m_tileID
◆ m_tileMgr
◆ m_tileSamplingFractionKey
Initial value:{this,
"TileSamplingFraction", "TileSamplingFraction", "Input Tile sampling fraction"}
Name of TileSamplingFraction in condition store.
Definition at line 95 of file ISF_HitAnalysis.h.
◆ m_TimingCut
IntegerProperty ISF_HitAnalysis::m_TimingCut {this, "TimingCut", 999999} |
|
private |
◆ m_total_cell_e
Float_t ISF_HitAnalysis::m_total_cell_e {} |
|
private |
◆ m_total_g4hit_e
Float_t ISF_HitAnalysis::m_total_g4hit_e {} |
|
private |
◆ m_total_hit_e
Float_t ISF_HitAnalysis::m_total_hit_e {} |
|
private |
◆ m_tree
TTree* ISF_HitAnalysis::m_tree {} |
|
private |
◆ m_truth_barcode
std::vector<int>* ISF_HitAnalysis::m_truth_barcode {} |
|
private |
◆ m_truth_energy
std::vector<float>* ISF_HitAnalysis::m_truth_energy {} |
|
private |
◆ m_truth_pdg
std::vector<int>* ISF_HitAnalysis::m_truth_pdg {} |
|
private |
◆ m_truth_px
std::vector<float>* ISF_HitAnalysis::m_truth_px {} |
|
private |
◆ m_truth_py
std::vector<float>* ISF_HitAnalysis::m_truth_py {} |
|
private |
◆ m_truth_pz
std::vector<float>* ISF_HitAnalysis::m_truth_pz {} |
|
private |
◆ m_truth_vtxbarcode
std::vector<int>* ISF_HitAnalysis::m_truth_vtxbarcode {} |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ MAX_LAYER
const int ISF_HitAnalysis::MAX_LAYER = 25 |
|
static |
The documentation for this class was generated from the following files:
std::vector< int > * m_truth_vtxbarcode
def retrieve(aClass, aKey=None)
JetConstituentVector::iterator iterator
std::vector< float > * m_MuonEntryLayer_E
bool is_tile_aux(const Identifier &id) const
Trk::PdgToParticleHypothesis m_pdgToParticleHypothesis
std::vector< std::vector< float > > * m_newTTC_back_detaBorder
std::vector< float > * m_truth_pz
PublicToolHandle< IFastCaloSimCaloExtrapolation > m_FastCaloSimCaloExtrapolation
The FastCaloSimCaloExtrapolation tool.
Const iterator class for DataVector/DataList.
std::vector< std::vector< float > > * m_newTTC_entrance_eta
std::vector< Float_t > * m_final_hit_energy
std::vector< float > * m_cluster_phi
std::vector< float > * m_cell_energy
std::vector< float > * m_cluster_energy
DoubleProperty m_CaloBoundaryZ
Trk::ParticleHypothesis convert(int pdg, bool &stable, bool &exiting, double charge=1.) const
Converter method : PDG -> Particle Hyptothesis.
std::vector< float > * m_newTTC_Angle3D
std::vector< std::vector< float > > * m_newTTC_mid_r
std::vector< std::vector< float > > * m_newTTC_entrance_r
bool is_lar_fcal(Identifier id) const
bool is_tile_gap(const Identifier &id) const
AtlasHitsVector< TileHit >::const_iterator TileHitVecConstIterator
const Amg::Vector3D & position() const
Access method for the position.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::unique_ptr< ParametersBase< DIM, T > > uniqueClone() const
clone method for polymorphic deep copy returning unique_ptr; it is not overriden, but uses the existi...
FCS_matchedcellvector * m_oneeventcells
IntegerProperty m_TimingCut
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
std::vector< float > * m_MuonEntryLayer_pz
const CaloDetDescrElement * get_element(const Identifier &cellId) const
get element by its identifier
std::vector< int > * m_truth_barcode
std::vector< FPGATrackSimHit > hitVector
static const int MAX_LAYER
StringProperty m_caloEntranceName
std::vector< bool > * m_islarendcap
std::vector< float > * m_newTTC_IDCaloBoundary_eta
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
value_type get_compact() const
Get the compact id.
bool msgLvl(const MSG::Level lvl) const
bool is_tile_extbarrel(const Identifier &id) const
std::vector< float > * m_hit_samplingfraction
std::vector< Float_t > * m_final_cell_energy
std::vector< int > * m_cell_sampling
std::vector< float > * m_newTTC_IDCaloBoundary_z
std::vector< float > * m_hit_x
Simple variables by Ketevi.
#define ATH_MSG_VERBOSE(x)
const_iterator begin() const
std::vector< int > * m_hit_sampling
std::vector< Long64_t > * m_hit_identifier
std::vector< float > * m_MuonEntryLayer_x
std::vector< bool > * m_islarbarrel
std::vector< bool > * m_istile
std::vector< FCS_g4hit > g4hit
std::vector< Long64_t > * m_g4hit_identifier
int channel(const HWIdentifier &id) const
extract channel field from HW identifier
std::vector< std::vector< bool > > * m_newTTC_entrance_OK
void set(pointer_t elt) const
Set the element, assuming it is currently null.
std::vector< std::vector< float > > * m_newTTC_mid_z
boost::transform_iterator< make_const, typename CONT::const_iterator > const_iterator
virtual void setOwner(IDataHandleHolder *o)=0
std::vector< float > * m_newTTC_IDCaloBoundary_r
const TileHWID * m_tileHWID
std::vector< float > * m_hit_energy
Bookkeeping of cells that make up a cluster Simplified replacement for CaloCellLink,...
std::vector< unsigned > * m_cluster_size
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
std::vector< std::vector< float > > * m_newTTC_entrance_phi
Identifier identify() const override final
cell identifier
Description of a calorimeter cluster.
const CaloCellContainer * getCellContainer() const
Method to access underlying cell container.
FCS_matchedcellvector * m_layercells[MAX_LAYER]
std::vector< float > * m_cluster_eta
virtual StatusCode sysInitialize() override
Override sysInitialize.
std::vector< float > * m_hit_y
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
std::vector< float > * m_newTTC_IDCaloBoundary_phi
std::vector< int > * m_g4hit_sampling
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual const float & FSAMPL(const HWIdentifier &id) const =0
void push_back(FCS_matchedcell cell)
std::vector< int > * m_MuonEntryLayer_pdg
std::vector< std::vector< float > > * m_newTTC_back_z
const LArFCAL_ID * m_larFcalID
bool is_tile(Identifier id) const
std::vector< Float_t > * m_final_g4hit_energy
bool is_lar_hec(Identifier id) const
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
IntegerProperty m_NtruthParticles
std::vector< Long64_t > * m_g4hit_cellidentifier
const TileCablingService * m_tileCabling
std::vector< std::vector< float > > * m_newTTC_back_eta
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
SG::ReadCondHandleKey< TileSamplingFraction > m_tileSamplingFractionKey
Name of TileSamplingFraction in condition store.
std::vector< std::vector< float > > * m_newTTC_entrance_detaBorder
std::vector< std::vector< float > > * m_newTTC_back_phi
virtual void renounce()=0
std::vector< float > * m_MuonEntryLayer_y
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
std::vector< Long64_t > * m_cell_identifier
Identifier cellID() const
std::vector< bool > * m_islarfcal
int drawerIdx(const HWIdentifier &id) const
construct drawer index from HW identifier
BooleanProperty m_doG4Hits
DoubleProperty m_CaloBoundaryR
std::vector< std::vector< float > > * m_newTTC_entrance_z
double charge(const T &p)
std::vector< float > * m_hit_z
Class to store hit energy and time in LAr cell from G4 simulation.
std::vector< float > * m_newTTC_AngleEta
Eigen::Matrix< double, 3, 1 > Vector3D
Container class for CaloCell.
std::vector< float > * m_MuonEntryLayer_z
SG::ReadCondHandleKey< ILArfSampl > m_fSamplKey
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
DataObjIDColl m_extendedExtraObjects
std::vector< float > * m_truth_energy
std::vector< Long64_t > * m_hit_cellidentifier
This class provides the client interface for accessing the detector description information common to...
std::vector< FCS_matchedcell > GetLayer(int layer)
std::vector< float > * m_MuonEntryLayer_px
Data object for each calorimeter readout cell.
std::vector< std::vector< float > > * m_newTTC_mid_phi
bool is_em_barrel(const Identifier id) const
test if the id belongs to the EM barrel
CaloCell_ID::CaloSample getSampling() const
cell sampling
#define ATH_MSG_WARNING(x)
PublicToolHandle< Trk::ITimedExtrapolator > m_extrapolator
const_iterator end() const
std::vector< std::vector< bool > > * m_newTTC_mid_OK
std::vector< std::vector< Long64_t > > * m_cluster_cellID
std::vector< float > * m_hit_time
const TileDetDescrManager * m_tileMgr
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
pointer_t get() const
Return the current value of the element.
std::vector< std::vector< bool > > * m_newTTC_back_OK
std::vector< bool > * m_islarhec
std::vector< FCS_matchedcell > m_vector
Class for collection of StepInfo class (G4 hits) copied and modified version to ISF.
AthAlgorithm()
Default constructor:
std::vector< int > * m_truth_pdg
std::vector< std::vector< float > > * m_newTTC_mid_detaBorder
std::vector< std::vector< float > > * m_newTTC_back_r
const LArEM_ID * m_larEmID
std::vector< CaloCell_ID_FCS::CaloSample > m_surfacelist
bool is_tile_barrel(const Identifier &id) const
Test of an Identifier to see if it belongs to a particular part of the calorimeter.
std::vector< float > * m_g4hit_energy
Identifier cell_id(const Identifier &any_id) const
std::vector< float > * m_g4hit_time
std::vector< FCS_hit > hit
const_iterator to loop over cells belonging to a cluster
CxxUtils::CachedPointer< const Trk::TrackingVolume > m_caloEntrance
The new Extrapolator setup.
std::vector< float > * m_truth_py
bool is_lar_em(Identifier id) const
size_type size() const noexcept
Returns the number of elements in the collection.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
std::vector< float > * m_truth_px
bool empty() const noexcept
Returns true if the collection is empty.
const LArHEC_ID * m_larHecID
bool is_em_endcap(const Identifier id) const
test if the id belongs to the EM Endcap
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
std::vector< std::vector< float > > * m_newTTC_mid_eta
HWIdentifier s2h_channel_id(const Identifier &id) const
std::vector< float > * m_g4hit_samplingfraction
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
std::vector< float > * m_MuonEntryLayer_py