|
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 |
|
StatusCode | updateMetaData (IOVSVC_CALLBACK_ARGS) |
|
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 {nullptr} |
|
const LArFCAL_ID * | m_larFcalID {nullptr} |
|
const LArHEC_ID * | m_larHecID {nullptr} |
|
const TileID * | m_tileID {nullptr} |
|
const TileHWID * | m_tileHWID {nullptr} |
|
const TileCablingService * | m_tileCabling {nullptr} |
|
const TileDetDescrManager * | m_tileMgr {nullptr} |
|
std::vector< float > * | m_hit_x {nullptr} |
| Simple variables by Ketevi. More...
|
|
std::vector< float > * | m_hit_y {nullptr} |
|
std::vector< float > * | m_hit_z {nullptr} |
|
std::vector< float > * | m_hit_energy {nullptr} |
|
std::vector< float > * | m_hit_time {nullptr} |
|
std::vector< Long64_t > * | m_hit_identifier {nullptr} |
|
std::vector< Long64_t > * | m_hit_cellidentifier {nullptr} |
|
std::vector< bool > * | m_islarbarrel {nullptr} |
|
std::vector< bool > * | m_islarendcap {nullptr} |
|
std::vector< bool > * | m_islarhec {nullptr} |
|
std::vector< bool > * | m_islarfcal {nullptr} |
|
std::vector< bool > * | m_istile {nullptr} |
|
std::vector< int > * | m_hit_sampling {nullptr} |
|
std::vector< float > * | m_hit_samplingfraction {nullptr} |
|
std::vector< float > * | m_truth_energy {nullptr} |
|
std::vector< float > * | m_truth_px {nullptr} |
|
std::vector< float > * | m_truth_py {nullptr} |
|
std::vector< float > * | m_truth_pz {nullptr} |
|
std::vector< int > * | m_truth_pdg {nullptr} |
|
std::vector< int > * | m_truth_barcode {nullptr} |
|
std::vector< int > * | m_truth_vtxbarcode {nullptr} |
|
std::vector< float > * | m_cluster_energy {nullptr} |
|
std::vector< float > * | m_cluster_eta {nullptr} |
|
std::vector< float > * | m_cluster_phi {nullptr} |
|
std::vector< unsigned > * | m_cluster_size {nullptr} |
|
std::vector< std::vector< Long64_t > > * | m_cluster_cellID {nullptr} |
|
std::vector< Long64_t > * | m_cell_identifier {nullptr} |
|
std::vector< float > * | m_cell_energy {nullptr} |
|
std::vector< int > * | m_cell_sampling {nullptr} |
|
std::vector< float > * | m_g4hit_energy {nullptr} |
|
std::vector< float > * | m_g4hit_time {nullptr} |
|
std::vector< Long64_t > * | m_g4hit_identifier {nullptr} |
|
std::vector< Long64_t > * | m_g4hit_cellidentifier {nullptr} |
|
std::vector< float > * | m_g4hit_samplingfraction {nullptr} |
|
std::vector< int > * | m_g4hit_sampling {nullptr} |
|
FCS_matchedcellvector * | m_oneeventcells = nullptr |
|
FCS_matchedcellvector * | m_layercells [MAX_LAYER] |
|
Float_t | m_total_cell_e = 0 |
|
Float_t | m_total_hit_e = 0 |
|
Float_t | m_total_g4hit_e = 0 |
|
std::vector< Float_t > * | m_final_cell_energy {nullptr} |
|
std::vector< Float_t > * | m_final_hit_energy {nullptr} |
|
std::vector< Float_t > * | m_final_g4hit_energy {nullptr} |
|
TTree * | m_tree {nullptr} |
|
double | m_eta_calo_surf {0.} |
|
double | m_phi_calo_surf {0.} |
|
double | m_d_calo_surf {0.} |
|
double | m_ptruth_eta {0.} |
|
double | m_ptruth_phi {0.} |
|
double | m_ptruth_e {0.} |
|
double | m_ptruth_et {0.} |
|
double | m_ptruth_pt {0.} |
|
double | m_ptruth_p {0.} |
|
int | m_pdgid {0} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_eta {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_phi {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_r {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_z {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_entrance_detaBorder {nullptr} |
|
std::vector< std::vector< bool > > * | m_newTTC_entrance_OK {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_back_eta {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_back_phi {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_back_r {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_back_z {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_back_detaBorder {nullptr} |
|
std::vector< std::vector< bool > > * | m_newTTC_back_OK {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_eta {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_phi {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_r {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_z {nullptr} |
|
std::vector< std::vector< float > > * | m_newTTC_mid_detaBorder {nullptr} |
|
std::vector< std::vector< bool > > * | m_newTTC_mid_OK {nullptr} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_eta {nullptr} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_phi {nullptr} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_r {nullptr} |
|
std::vector< float > * | m_newTTC_IDCaloBoundary_z {nullptr} |
|
std::vector< float > * | m_newTTC_Angle3D {nullptr} |
|
std::vector< float > * | m_newTTC_AngleEta {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_E {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_px {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_py {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_pz {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_x {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_y {nullptr} |
|
std::vector< float > * | m_MuonEntryLayer_z {nullptr} |
|
std::vector< int > * | m_MuonEntryLayer_pdg {nullptr} |
|
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] |
|
HepPDT::ParticleDataTable * | m_particleDataTable {nullptr} |
|
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 73 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 1374 of file ISF_HitAnalysis.cxx.
1377 ATH_MSG_DEBUG (
"[ fastCaloSim transport ] processing particle "<<
part.pdg_id() );
1379 std::vector<Trk::HitInfo>*
hitVector =
new std::vector<Trk::HitInfo>;
1392 auto vtx =
part.production_vertex();
1397 pos =
Amg::Vector3D( vtx->position().x(),vtx->position().y(), vtx->position().z());
1401 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] starting transport from position eta="<<
pos.eta()<<
" phi="<<
pos.phi()<<
" d="<<
pos.mag()<<
" pT="<<
mom.perp() );
1408 double freepath = -1.;
1411 double tDec = freepath > 0. ? freepath : -1.;
1445 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] before calo entrance ");
1457 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] after calo entrance ");
1459 std::unique_ptr<const Trk::TrackParameters> caloEntry =
nullptr;
1463 std::vector<Trk::HitInfo>* dummyHitVector =
nullptr;
1485 caloEntry = inputPar.uniqueClone();
1488 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] after calo caloEntry ");
1492 std::unique_ptr<const Trk::TrackParameters> eParameters =
nullptr;
1497 ATH_MSG_DEBUG(
"[ fastCaloSim transport ] starting Calo transport from position eta="<<caloEntry->
position().eta()<<
" phi="<<caloEntry->
position().phi()<<
" d="<<caloEntry->
position().mag() );
1509 eParameters =
m_extrapolator->extrapolateWithPathLimit(*caloEntry,
1518 if (eParameters)
hitVector->push_back(
Trk::HitInfo(std::move(eParameters),timeLim.time,nextGeoID,0.));
1525 while (it < hitVector->
end() )
1529 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);
◆ 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.
◆ 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.
◆ 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 527 of file ISF_HitAnalysis.cxx.
535 return StatusCode::FAILURE;
542 ATH_CHECK( tileSamplingFraction.isValid() );
547 vectest.SetPtEtaPhi(1.,1.,1.);
585 std::map<Long64_t, FCS_cell>
cells;
586 std::map<Long64_t, std::vector<FCS_g4hit> > g4hits;
587 std::map<Long64_t, std::vector<FCS_hit> >
hits;
647 if (
sc.isFailure()) {
653 m_hit_x->push_back( (*it)->x() );
654 m_hit_y->push_back( (*it)->y() );
655 m_hit_z->push_back( (*it)->z() );
660 bool larbarrel=
false;
661 bool larendcap=
false;
683 sampfrac = tileSamplingFraction->getSamplingFraction(drawerIdx,
channel);
704 Int_t tile_sampling = -1;
708 if(tile_sampling!= -1) sampling = tile_sampling;
730 sc =
evtStore()->retrieve(mcEvent,
"TruthEvent");
736 if(!mcEvent->
empty()) {
739 int particles_size=(*mcEvent->
begin())->particles_size();
741 loopEnd = particles_size;
744 for (
const auto&
part: *(*mcEvent->
begin()))
746 for (
const auto part: *(*mcEvent->
begin()))
750 ATH_MSG_DEBUG(
"Number truth particles="<<particles_size<<
" loopEnd="<<loopEnd);
753 if (particleIndex>loopEnd)
break;
761 moment.SetXYZ(
part->momentum().px(),
part->momentum().py(),
part->momentum().pz());
762 TVector3 direction=moment.Unit();
774 if((
part)->production_vertex()) {
775 truth.set_vertex((
part)->production_vertex()->position().
x(), (
part)->production_vertex()->position().
y(), (
part)->production_vertex()->position().
z());
777 truth.set_vertex(direction.X(),direction.Y(),direction.Z());
778 ATH_MSG_WARNING(
"No particle production vetext, use VERTEX from direction: x "<<direction.X()<<
" y "<<direction.Y()<<
" z "<<direction.Z());
781 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 ) {
782 ATH_MSG_WARNING(
"VERTEX from direction: x "<<direction.X()<<
" y "<<direction.Y()<<
" z "<<direction.Z());
783 ATH_MSG_WARNING(
"but VERTEX from hepmc: x "<<truth.vertex().X()<<
" y "<<truth.vertex().Y()<<
" z "<<truth.vertex().Z());
805 std::vector<float> eta_vec_ENT;
806 std::vector<float> phi_vec_ENT;
807 std::vector<float> r_vec_ENT;
808 std::vector<float> z_vec_ENT;
809 std::vector<float> detaBorder_vec_ENT;
810 std::vector<bool> OK_vec_ENT;
812 std::vector<float> eta_vec_EXT;
813 std::vector<float> phi_vec_EXT;
814 std::vector<float> r_vec_EXT;
815 std::vector<float> z_vec_EXT;
816 std::vector<float> detaBorder_vec_EXT;
817 std::vector<bool> OK_vec_EXT;
819 std::vector<float> eta_vec_MID;
820 std::vector<float> phi_vec_MID;
821 std::vector<float> r_vec_MID;
822 std::vector<float> z_vec_MID;
823 std::vector<float> detaBorder_vec_MID;
824 std::vector<bool> OK_vec_MID;
887 sc =
evtStore()->retrieve(MuonEntry,
"MuonEntryLayer");
909 std::string clusterContainerName =
"CaloCalTopoClusters";
910 sc =
evtStore()->retrieve(theClusters, clusterContainerName);
911 if (
sc.isFailure()) {
912 ATH_MSG_WARNING(
" Couldn't get cluster container '" << clusterContainerName <<
"'");
913 return StatusCode::SUCCESS;
917 for ( ; itrClus!=itrLastClus; ++itrClus){
935 unsigned cellcount = 0;
936 std::vector<Long64_t> cellIDs_in_cluster;
939 for ( ;cellIter !=cellIterEnd;cellIter++) {
942 cellIDs_in_cluster.push_back(
cell->ID().get_compact());
943 float EnergyCell=
cell->energy();
952 sc =
evtStore()->retrieve(cellColl,
"AllCalo");
963 for ( ; itrCell!=itrLastCell; ++itrCell)
971 else if (calo_dd_man->
get_element((*itrCell)->ID()))
983 std::string lArKey [4] = {
"LArHitEMB",
"LArHitEMEC",
"LArHitFCAL",
"LArHitHEC"};
984 for (
unsigned int i=0;
i<4;
i++)
992 for (hi=(*iter).begin();hi!=(*iter).end();++hi) {
994 const LArHit* larHit = *hi;
1002 float larsampfrac=fSampl->
FSAMPL(larhitid);
1011 ATH_MSG_INFO(
"Read "<<hitnumber<<
" G4Hits from "<<lArKey[
i]);
1036 float tilesampfrac = tileSamplingFraction->getSamplingFraction(drawerIdx,
channel);
1039 for (
int tilesubhit_i = 0; tilesubhit_i<(*i_hit).size(); tilesubhit_i++)
1042 m_g4hit_time->push_back( (*i_hit).time(tilesubhit_i) );
1050 ATH_MSG_INFO(
"Read "<<hitnumber<<
" G4Hits from TileHitVec");
1060 one_cell.cell_identifier = (*m_cell_identifier)[cell_i];
1061 one_cell.sampling = (*m_cell_sampling)[cell_i];
1062 one_cell.energy = (*m_cell_energy)[cell_i];
1063 one_cell.center_x = 0.0;
1064 one_cell.center_y = 0.0;
1065 one_cell.center_z = 0.0;
1066 cells.insert(std::pair<Long64_t, FCS_cell>(one_cell.cell_identifier, one_cell));
1088 one_g4hit.identifier = (*m_g4hit_identifier)[g4hit_i];
1089 one_g4hit.cell_identifier = (*m_g4hit_cellidentifier)[g4hit_i];
1090 one_g4hit.sampling = (*m_g4hit_sampling)[g4hit_i];
1091 one_g4hit.hit_time = (*m_g4hit_time)[g4hit_i];
1093 if (one_g4hit.sampling >= 12 && one_g4hit.sampling <= 20)
1097 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] * (*m_g4hit_samplingfraction)[g4hit_i];
1099 else one_g4hit.hit_energy = 0.;
1103 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] / (*m_g4hit_samplingfraction)[g4hit_i];
1105 g4hits.insert(std::pair<Long64_t, std::vector<FCS_g4hit> >(one_g4hit.cell_identifier, std::vector<FCS_g4hit>(1, one_g4hit)));
1110 one_g4hit.identifier = (*m_g4hit_identifier)[g4hit_i];
1111 one_g4hit.cell_identifier = (*m_g4hit_cellidentifier)[g4hit_i];
1112 one_g4hit.sampling = (*m_g4hit_sampling)[g4hit_i];
1113 one_g4hit.hit_time = (*m_g4hit_time)[g4hit_i];
1114 if (one_g4hit.sampling >= 12 && one_g4hit.sampling <= 20)
1118 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] * (*m_g4hit_samplingfraction)[g4hit_i];
1120 else one_g4hit.hit_energy = 0.;
1124 one_g4hit.hit_energy = (*m_g4hit_energy)[g4hit_i] / (*m_g4hit_samplingfraction)[g4hit_i];
1126 g4hits[(*m_g4hit_cellidentifier)[g4hit_i]].push_back(one_g4hit);
1142 one_hit.identifier = (*m_hit_identifier)[hit_i];
1143 one_hit.cell_identifier = (*m_hit_cellidentifier)[hit_i];
1144 one_hit.sampling = (*m_hit_sampling)[hit_i];
1146 if (one_hit.sampling >= 12 && one_hit.sampling <= 20)
1150 one_hit.hit_energy = (*m_hit_energy)[hit_i] * (*m_hit_samplingfraction)[hit_i];
1152 else one_hit.hit_energy = 0.;
1156 one_hit.hit_energy = (*m_hit_energy)[hit_i] / (*m_hit_samplingfraction)[hit_i];
1159 one_hit.hit_time = (*m_hit_time)[hit_i];
1160 one_hit.hit_x = (*m_hit_x)[hit_i];
1161 one_hit.hit_y = (*m_hit_y)[hit_i];
1162 one_hit.hit_z = (*m_hit_z)[hit_i];
1163 hits.insert(std::pair<Long64_t, std::vector<FCS_hit> >(one_hit.cell_identifier, std::vector<FCS_hit>(1, one_hit)));
1168 one_hit.identifier = (*m_hit_identifier)[hit_i];
1169 one_hit.cell_identifier = (*m_hit_cellidentifier)[hit_i];
1170 one_hit.sampling = (*m_hit_sampling)[hit_i];
1172 if (one_hit.sampling >= 12 && one_hit.sampling <= 20)
1176 one_hit.hit_energy = (*m_hit_energy)[hit_i] * (*m_hit_samplingfraction)[hit_i];
1178 else one_hit.hit_energy = 0.;
1182 one_hit.hit_energy = (*m_hit_energy)[hit_i] / (*m_hit_samplingfraction)[hit_i];
1185 one_hit.hit_time = (*m_hit_time)[hit_i];
1186 one_hit.hit_x = (*m_hit_x)[hit_i];
1187 one_hit.hit_y = (*m_hit_y)[hit_i];
1188 one_hit.hit_z = (*m_hit_z)[hit_i];
1189 hits[(*m_hit_cellidentifier)[hit_i]].push_back(one_hit);
1196 one_matchedcell.
clear();
1198 one_matchedcell.
cell =
it->second;
1200 std::map<Long64_t, std::vector<FCS_hit> >
::iterator it2 =
hits.find(
it->first);
1201 if (it2 !=
hits.end())
1204 one_matchedcell.
hit = it2->second;
1210 one_matchedcell.
hit.clear();
1213 std::map<Long64_t, std::vector<FCS_g4hit> >
::iterator it3 = g4hits.find(
it->first);
1214 if (it3 != g4hits.end())
1216 one_matchedcell.
g4hit = it3->second;
1222 one_matchedcell.
g4hit.clear();
1231 ATH_MSG_DEBUG(
"ISF_HitAnalysis Check after cells: " <<
cells.size() <<
" " << g4hits.size() <<
" " <<
hits.size());
1235 one_matchedcell.
clear();
1238 if (!
it->second.empty())
1252 one_matchedcell.
hit =
it->second;
1253 std::map<Long64_t, std::vector<FCS_g4hit> >
::iterator it3 = g4hits.find(
it->first);
1254 if (it3 != g4hits.end())
1256 one_matchedcell.
g4hit = it3->second;
1262 one_matchedcell.
g4hit.clear();
1270 ATH_MSG_DEBUG(
"ISF_HitAnalysis Check after hits: " <<
cells.size() <<
" " << g4hits.size() <<
" " <<
hits.size());
1271 for (std::map<Long64_t, std::vector<FCS_g4hit> >::
iterator it = g4hits.begin();
it != g4hits.end();)
1273 one_matchedcell.
clear();
1275 if (!
it->second.empty())
1289 one_matchedcell.
g4hit =
it->second;
1290 one_matchedcell.
hit.clear();
1313 for (
unsigned int cellindex = 0; cellindex <
m_layercells[
i]->
size(); cellindex++)
1370 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.
◆ updateMetaData()
Definition at line 85 of file ISF_HitAnalysis.cxx.
90 bool run_update =
false;
95 std::list< std::string >::const_iterator itr =
keys.begin();
96 std::list< std::string >::const_iterator
end =
keys.end();
97 for( ; itr !=
end; ++itr )
104 if( ! run_update )
return StatusCode::SUCCESS;
113 AthenaAttributeList::const_iterator attr_itr = simParam->begin();
114 AthenaAttributeList::const_iterator attr_end = simParam->end();
115 for( ; attr_itr != attr_end; ++attr_itr )
117 std::stringstream outstr;
118 attr_itr->toOutputStream(outstr);
123 return StatusCode::SUCCESS;
◆ 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 96 of file ISF_HitAnalysis.h.
◆ m_cell_energy
std::vector<float>* ISF_HitAnalysis::m_cell_energy {nullptr} |
|
private |
◆ m_cell_identifier
std::vector<Long64_t>* ISF_HitAnalysis::m_cell_identifier {nullptr} |
|
private |
◆ m_cell_sampling
std::vector<int>* ISF_HitAnalysis::m_cell_sampling {nullptr} |
|
private |
◆ m_cluster_cellID
std::vector<std::vector<Long64_t > >* ISF_HitAnalysis::m_cluster_cellID {nullptr} |
|
private |
◆ m_cluster_energy
std::vector<float>* ISF_HitAnalysis::m_cluster_energy {nullptr} |
|
private |
◆ m_cluster_eta
std::vector<float>* ISF_HitAnalysis::m_cluster_eta {nullptr} |
|
private |
◆ m_cluster_phi
std::vector<float>* ISF_HitAnalysis::m_cluster_phi {nullptr} |
|
private |
◆ m_cluster_size
std::vector<unsigned>* ISF_HitAnalysis::m_cluster_size {nullptr} |
|
private |
◆ m_d_calo_surf
double ISF_HitAnalysis::m_d_calo_surf {0.} |
|
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 {0.} |
|
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 {nullptr} |
|
private |
◆ m_final_g4hit_energy
std::vector<Float_t>* ISF_HitAnalysis::m_final_g4hit_energy {nullptr} |
|
private |
◆ m_final_hit_energy
std::vector<Float_t>* ISF_HitAnalysis::m_final_hit_energy {nullptr} |
|
private |
◆ m_fSamplKey
Initial value:{this,
"fSamplKey", "LArfSamplSym", "SG Key of LArfSampl object"}
Definition at line 100 of file ISF_HitAnalysis.h.
◆ m_g4hit_cellidentifier
std::vector<Long64_t>* ISF_HitAnalysis::m_g4hit_cellidentifier {nullptr} |
|
private |
◆ m_g4hit_energy
std::vector<float>* ISF_HitAnalysis::m_g4hit_energy {nullptr} |
|
private |
◆ m_g4hit_identifier
std::vector<Long64_t>* ISF_HitAnalysis::m_g4hit_identifier {nullptr} |
|
private |
◆ m_g4hit_sampling
std::vector<int>* ISF_HitAnalysis::m_g4hit_sampling {nullptr} |
|
private |
◆ m_g4hit_samplingfraction
std::vector<float>* ISF_HitAnalysis::m_g4hit_samplingfraction {nullptr} |
|
private |
◆ m_g4hit_time
std::vector<float>* ISF_HitAnalysis::m_g4hit_time {nullptr} |
|
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 94 of file ISF_HitAnalysis.h.
◆ m_hit_cellidentifier
std::vector<Long64_t>* ISF_HitAnalysis::m_hit_cellidentifier {nullptr} |
|
private |
◆ m_hit_energy
std::vector<float>* ISF_HitAnalysis::m_hit_energy {nullptr} |
|
private |
◆ m_hit_identifier
std::vector<Long64_t>* ISF_HitAnalysis::m_hit_identifier {nullptr} |
|
private |
◆ m_hit_sampling
std::vector<int>* ISF_HitAnalysis::m_hit_sampling {nullptr} |
|
private |
◆ m_hit_samplingfraction
std::vector<float>* ISF_HitAnalysis::m_hit_samplingfraction {nullptr} |
|
private |
◆ m_hit_time
std::vector<float>* ISF_HitAnalysis::m_hit_time {nullptr} |
|
private |
◆ m_hit_x
std::vector<float>* ISF_HitAnalysis::m_hit_x {nullptr} |
|
private |
◆ m_hit_y
std::vector<float>* ISF_HitAnalysis::m_hit_y {nullptr} |
|
private |
◆ m_hit_z
std::vector<float>* ISF_HitAnalysis::m_hit_z {nullptr} |
|
private |
◆ m_islarbarrel
std::vector<bool>* ISF_HitAnalysis::m_islarbarrel {nullptr} |
|
private |
◆ m_islarendcap
std::vector<bool>* ISF_HitAnalysis::m_islarendcap {nullptr} |
|
private |
◆ m_islarfcal
std::vector<bool>* ISF_HitAnalysis::m_islarfcal {nullptr} |
|
private |
◆ m_islarhec
std::vector<bool>* ISF_HitAnalysis::m_islarhec {nullptr} |
|
private |
◆ m_istile
std::vector<bool>* ISF_HitAnalysis::m_istile {nullptr} |
|
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 {nullptr} |
|
private |
◆ m_MuonEntryLayer_pdg
std::vector<int>* ISF_HitAnalysis::m_MuonEntryLayer_pdg {nullptr} |
|
private |
◆ m_MuonEntryLayer_px
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_px {nullptr} |
|
private |
◆ m_MuonEntryLayer_py
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_py {nullptr} |
|
private |
◆ m_MuonEntryLayer_pz
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_pz {nullptr} |
|
private |
◆ m_MuonEntryLayer_x
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_x {nullptr} |
|
private |
◆ m_MuonEntryLayer_y
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_y {nullptr} |
|
private |
◆ m_MuonEntryLayer_z
std::vector<float>* ISF_HitAnalysis::m_MuonEntryLayer_z {nullptr} |
|
private |
◆ m_newTTC_Angle3D
std::vector<float>* ISF_HitAnalysis::m_newTTC_Angle3D {nullptr} |
|
private |
◆ m_newTTC_AngleEta
std::vector<float>* ISF_HitAnalysis::m_newTTC_AngleEta {nullptr} |
|
private |
◆ m_newTTC_back_detaBorder
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_detaBorder {nullptr} |
|
private |
◆ m_newTTC_back_eta
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_eta {nullptr} |
|
private |
◆ m_newTTC_back_OK
std::vector<std::vector<bool> >* ISF_HitAnalysis::m_newTTC_back_OK {nullptr} |
|
private |
◆ m_newTTC_back_phi
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_phi {nullptr} |
|
private |
◆ m_newTTC_back_r
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_r {nullptr} |
|
private |
◆ m_newTTC_back_z
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_back_z {nullptr} |
|
private |
◆ m_newTTC_entrance_detaBorder
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_detaBorder {nullptr} |
|
private |
◆ m_newTTC_entrance_eta
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_eta {nullptr} |
|
private |
◆ m_newTTC_entrance_OK
std::vector<std::vector<bool> >* ISF_HitAnalysis::m_newTTC_entrance_OK {nullptr} |
|
private |
◆ m_newTTC_entrance_phi
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_phi {nullptr} |
|
private |
◆ m_newTTC_entrance_r
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_r {nullptr} |
|
private |
◆ m_newTTC_entrance_z
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_entrance_z {nullptr} |
|
private |
◆ m_newTTC_IDCaloBoundary_eta
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_eta {nullptr} |
|
private |
◆ m_newTTC_IDCaloBoundary_phi
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_phi {nullptr} |
|
private |
◆ m_newTTC_IDCaloBoundary_r
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_r {nullptr} |
|
private |
◆ m_newTTC_IDCaloBoundary_z
std::vector<float>* ISF_HitAnalysis::m_newTTC_IDCaloBoundary_z {nullptr} |
|
private |
◆ m_newTTC_mid_detaBorder
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_detaBorder {nullptr} |
|
private |
◆ m_newTTC_mid_eta
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_eta {nullptr} |
|
private |
◆ m_newTTC_mid_OK
std::vector<std::vector<bool> >* ISF_HitAnalysis::m_newTTC_mid_OK {nullptr} |
|
private |
◆ m_newTTC_mid_phi
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_phi {nullptr} |
|
private |
◆ m_newTTC_mid_r
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_r {nullptr} |
|
private |
◆ m_newTTC_mid_z
std::vector<std::vector<float> >* ISF_HitAnalysis::m_newTTC_mid_z {nullptr} |
|
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 {nullptr} |
|
private |
◆ m_pdgid
int ISF_HitAnalysis::m_pdgid {0} |
|
private |
◆ m_pdgToParticleHypothesis
◆ m_phi_calo_surf
double ISF_HitAnalysis::m_phi_calo_surf {0.} |
|
private |
◆ m_ptruth_e
double ISF_HitAnalysis::m_ptruth_e {0.} |
|
private |
◆ m_ptruth_et
double ISF_HitAnalysis::m_ptruth_et {0.} |
|
private |
◆ m_ptruth_eta
double ISF_HitAnalysis::m_ptruth_eta {0.} |
|
private |
◆ m_ptruth_p
double ISF_HitAnalysis::m_ptruth_p {0.} |
|
private |
◆ m_ptruth_phi
double ISF_HitAnalysis::m_ptruth_phi {0.} |
|
private |
◆ m_ptruth_pt
double ISF_HitAnalysis::m_ptruth_pt {0.} |
|
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 117 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 110 of file ISF_HitAnalysis.h.
◆ m_tileHWID
◆ m_tileID
◆ m_tileMgr
◆ m_tileSamplingFractionKey
◆ m_TimingCut
IntegerProperty ISF_HitAnalysis::m_TimingCut {this, "TimingCut", 999999} |
|
private |
◆ m_total_cell_e
Float_t ISF_HitAnalysis::m_total_cell_e = 0 |
|
private |
◆ m_total_g4hit_e
Float_t ISF_HitAnalysis::m_total_g4hit_e = 0 |
|
private |
◆ m_total_hit_e
Float_t ISF_HitAnalysis::m_total_hit_e = 0 |
|
private |
◆ m_tree
TTree* ISF_HitAnalysis::m_tree {nullptr} |
|
private |
◆ m_truth_barcode
std::vector<int>* ISF_HitAnalysis::m_truth_barcode {nullptr} |
|
private |
◆ m_truth_energy
std::vector<float>* ISF_HitAnalysis::m_truth_energy {nullptr} |
|
private |
◆ m_truth_pdg
std::vector<int>* ISF_HitAnalysis::m_truth_pdg {nullptr} |
|
private |
◆ m_truth_px
std::vector<float>* ISF_HitAnalysis::m_truth_px {nullptr} |
|
private |
◆ m_truth_py
std::vector<float>* ISF_HitAnalysis::m_truth_py {nullptr} |
|
private |
◆ m_truth_pz
std::vector<float>* ISF_HitAnalysis::m_truth_pz {nullptr} |
|
private |
◆ m_truth_vtxbarcode
std::vector<int>* ISF_HitAnalysis::m_truth_vtxbarcode {nullptr} |
|
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
virtual double phi() const
The azimuthal angle ( ) of the particle.
std::vector< float > * m_MuonEntryLayer_E
StringProperty m_MC_DIGI_PARAM
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_cell_iterator cell_begin() const
Iterator of the underlying CaloClusterCellLink (const version)
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
StringProperty m_MC_SIM_PARAM
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
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)
float getZ(const xAOD::TrackParticle &)
Accessor utility function for getting the value of prodZ.
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.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
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.
virtual double eta() const
The pseudorapidity ( ) of the particle.
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
An AttributeList represents a logical row of attributes in a metadata table. The name and type of eac...
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
const CaloClusterCellLink * getCellLinks() const
Get a pointer to the CaloClusterCellLink object (const version)
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
value_type get_compact(void) const
Get the compact id.
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
const_cell_iterator cell_end() const
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>
virtual double e() const
The total energy of the particle.
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