|
ATLAS Offline Software
|
#include <FastCaloSimGeometryHelper.h>
|
| FastCaloSimGeometryHelper (const std::string &t, const std::string &n, const IInterface *p) |
| Constructor with parameters. More...
|
|
virtual | ~FastCaloSimGeometryHelper () |
| Destructor. More...
|
|
virtual StatusCode | initialize () override final |
|
virtual StatusCode | finalize () override final |
|
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 | sysInitialize () override |
| Perform system initialization for an algorithm. 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 |
|
virtual bool | PostProcessGeometry () |
|
virtual void Validate | ATLAS_NOT_THREAD_SAFE (int nrnd=100) |
|
virtual const CaloDetDescrElement * | getDDE (Identifier identify) |
|
virtual const CaloDetDescrElement * | getDDE (int sampling, Identifier identify) |
|
virtual const CaloDetDescrElement * | getDDE (int sampling, float eta, float phi, float *distance=0, int *steps=0) |
|
virtual const CaloDetDescrElement * | getFCalDDE (int sampling, float x, float y, float z, float *distance=0, int *steps=0) |
|
bool | getClosestFCalCellIndex (int sampling, float x, float y, int &ieta, int &iphi, int *steps=0) |
|
double | deta (int sample, double eta) const |
|
void | minmaxeta (int sample, double eta, double &mineta, double &maxeta) const |
|
double | rzmid (int sample, double eta) const |
|
double | rzent (int sample, double eta) const |
|
double | rzext (int sample, double eta) const |
|
double | rmid (int sample, double eta) const |
|
double | rent (int sample, double eta) const |
|
double | rext (int sample, double eta) const |
|
double | zmid (int sample, double eta) const |
|
double | zent (int sample, double eta) const |
|
double | zext (int sample, double eta) const |
|
double | rpos (int sample, double eta, int subpos=CaloSubPos::SUBPOS_MID) const |
|
double | zpos (int sample, double eta, int subpos=CaloSubPos::SUBPOS_MID) const |
|
double | rzpos (int sample, double eta, int subpos=CaloSubPos::SUBPOS_MID) const |
|
bool | isCaloBarrel (int sample) const |
|
TGraphErrors * | GetGraph (unsigned int sample) const |
|
void | SetDoGraphs (bool dographs=true) |
|
bool | DoGraphs () const |
|
TGraph * | DrawGeoSampleForPhi0 (int sample, int calocol, bool print=false) |
|
TCanvas * | DrawGeoForPhi0 () |
|
FCAL_ChannelMap * | GetFCAL_ChannelMap () |
|
void | SetFCal_ChannelMap (const FCAL_ChannelMap *fcal_ChannnelMap) |
|
void | calculateFCalRminRmax () |
|
virtual bool | checkFCalGeometryConsistency () |
|
virtual void | PrintMapInfo (int i, int j) |
|
Definition at line 16 of file FastCaloSimGeometryHelper.h.
◆ StoreGateSvc_t
◆ FastCaloSimGeometryHelper()
FastCaloSimGeometryHelper::FastCaloSimGeometryHelper |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
Constructor with parameters.
Constructor.
Definition at line 15 of file FastCaloSimGeometryHelper.cxx.
17 declareInterface<IFastCaloSimGeometryHelper>(
this);
◆ ~FastCaloSimGeometryHelper()
FastCaloSimGeometryHelper::~FastCaloSimGeometryHelper |
( |
| ) |
|
|
virtualdefault |
◆ addcell()
|
protectedvirtualinherited |
◆ ATLAS_NOT_THREAD_SAFE()
virtual void Validate CaloGeometry::ATLAS_NOT_THREAD_SAFE |
( |
int |
nrnd = 100 | ) |
|
|
virtualinherited |
◆ calculateFCalRminRmax()
void CaloGeometry::calculateFCalRminRmax |
( |
| ) |
|
|
inherited |
◆ checkFCalGeometryConsistency()
bool CaloGeometry::checkFCalGeometryConsistency |
( |
| ) |
|
|
virtualinherited |
Reimplemented in CaloGeometryFromFile.
Definition at line 922 of file CaloGeometry.cxx.
928 long mask1[]{0x34,0x34,0x35};
929 long mask2[]{0x36,0x36,0x37};
935 for(
int imap=1;imap<=3;imap++){
937 int sampling = imap+20;
940 cout <<
"Error: Incompatibility between FCalChannel map and GEO file: Different number of cells in m_cells_in_sampling and FCal_ChannelMap" << endl;
949 phi_index =
it->first & 0xffff;
955 id=(mask1[imap-1]<<12) + (
eta_index << 5) +2*phi_index;
957 if(imap==2)
id+= (8<<8);
962 id=(mask2[imap-1]<<12) + (
eta_index << 5) +2*phi_index;
963 if(imap==2)
id+= (8<<8);
967 if(!TMath::AreEqualRel(
x, DDE1->
x(),1.E-8) || !TMath::AreEqualRel(
y, DDE1->
y(),1.E-8) || !TMath::AreEqualRel(
x, DDE2->
x(),1.E-8) || !TMath::AreEqualRel(
y, DDE2->
y(),1.E-8) ){
968 cout <<
"Error: Incompatibility between FCalChannel map and GEO file \n" <<
x <<
" " << DDE1->
x() <<
" " << DDE2->
x() <<
y <<
" " << DDE1->
y() <<
" " << DDE2->
y() << endl;
◆ 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]
◆ deta()
double CaloGeometry::deta |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ detStore()
◆ DoGraphs()
bool CaloGeometry::DoGraphs |
( |
| ) |
const |
|
inlineinherited |
◆ DrawGeoForPhi0()
TCanvas * CaloGeometry::DrawGeoForPhi0 |
( |
| ) |
|
|
inherited |
Definition at line 440 of file CaloGeometry.cxx.
442 TCanvas*
c=
new TCanvas(
"CaloGeoForPhi0",
"Calo geometry for #phi~0");
443 TH2D* hcalolayout=
new TH2D(
"hcalolayoutPhi0",
"Reconstruction geometry: calorimeter layout;z [mm];r [mm]",50,-7000,7000,50,0,4000);
445 hcalolayout->SetStats(0);
446 hcalolayout->GetYaxis()->SetTitleOffset(1.4);
448 TLegend*
leg=
new TLegend(0.30,0.13,0.70,0.37);
449 leg->SetFillStyle(0);
450 leg->SetFillColor(10);
451 leg->SetBorderSize(1);
457 std::string sname=Form(
"Sampling %2d : ",
sample);
459 leg->AddEntry(
gr,sname.c_str(),
"LF");
◆ DrawGeoSampleForPhi0()
TGraph * CaloGeometry::DrawGeoSampleForPhi0 |
( |
int |
sample, |
|
|
int |
calocol, |
|
|
bool |
print = false |
|
) |
| |
|
inherited |
Definition at line 349 of file CaloGeometry.cxx.
354 TGraph* firstgr=
nullptr;
361 TGraph*
gr=
new TGraph(5);
362 gr->SetLineColor(TMath::Abs(calocol));
363 gr->SetFillColor(TMath::Abs(calocol));
365 gr->SetFillStyle(1001);
370 double r=theDDE->
r();
371 double dr=theDDE->
dr();
372 double x=theDDE->
x();
373 double dx=theDDE->
dx();
374 double y=theDDE->
y();
375 double dy=theDDE->
dy();
376 double z=theDDE->
z();
377 double dz=theDDE->
dz()*2;
385 cout<<
"sample="<<
sample<<
" r="<<
r<<
" dr="<<
dr<<
" eta="<<
eta<<
" deta="<<
deta<<
" x="<<
x<<
" y="<<
y<<
" z="<<
z<<
" dz="<<dz<<endl;
389 gr->SetPoint(0,cv.Z(),cv.Pt());
390 gr->SetPoint(4,cv.Z(),cv.Pt());
392 gr->SetPoint(1,cv.Z(),cv.Pt());
394 gr->SetPoint(2,cv.Z(),cv.Pt());
396 gr->SetPoint(3,cv.Z(),cv.Pt());
399 cv.SetPtEtaPhi(1,
eta-
deta/2,0);cv*=(
z-dz/2)/cv.Z();
400 gr->SetPoint(0,cv.Z(),cv.Pt());
401 gr->SetPoint(4,cv.Z(),cv.Pt());
402 cv.SetPtEtaPhi(1,
eta+
deta/2,0);cv*=(
z-dz/2)/cv.Z();
403 gr->SetPoint(1,cv.Z(),cv.Pt());
404 cv.SetPtEtaPhi(1,
eta+
deta/2,0);cv*=(
z+dz/2)/cv.Z();
405 gr->SetPoint(2,cv.Z(),cv.Pt());
406 cv.SetPtEtaPhi(1,
eta-
deta/2,0);cv*=(
z+dz/2)/cv.Z();
407 gr->SetPoint(3,cv.Z(),cv.Pt());
414 minr=TMath::Min(minr,
pr);
415 maxr=TMath::Max(maxr,
pr);
418 cv.SetXYZ(minr,0,
z-dz/2);
419 gr->SetPoint(0,cv.Z(),cv.Pt());
420 gr->SetPoint(4,cv.Z(),cv.Pt());
421 cv.SetXYZ(maxr,0,
z-dz/2);
422 gr->SetPoint(1,cv.Z(),cv.Pt());
423 cv.SetXYZ(maxr,0,
z+dz/2);
424 gr->SetPoint(2,cv.Z(),cv.Pt());
425 cv.SetXYZ(minr,0,
z+dz/2);
426 gr->SetPoint(3,cv.Z(),cv.Pt());
432 if(ngr==0) firstgr=
gr;
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ 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
◆ finalize()
StatusCode FastCaloSimGeometryHelper::finalize |
( |
| ) |
|
|
finaloverridevirtual |
◆ getClosestFCalCellIndex()
bool CaloGeometry::getClosestFCalCellIndex |
( |
int |
sampling, |
|
|
float |
x, |
|
|
float |
y, |
|
|
int & |
ieta, |
|
|
int & |
iphi, |
|
|
int * |
steps = 0 |
|
) |
| |
|
inherited |
Definition at line 592 of file CaloGeometry.cxx.
596 int isam=sampling-20;
602 const double r = sqrt(
x*
x +
y*
y);
603 if(
r==0.)
return false;
604 const double r_inverse=1./
r;
606 if((
r/rmax)>(rmin*r_inverse)){
◆ getDDE() [1/3]
◆ getDDE() [2/3]
const CaloDetDescrElement * CaloGeometry::getDDE |
( |
int |
sampling, |
|
|
float |
eta, |
|
|
float |
phi, |
|
|
float * |
distance = 0 , |
|
|
int * |
steps = 0 |
|
) |
| |
|
virtualinherited |
Implements ICaloGeometry.
Definition at line 475 of file CaloGeometry.cxx.
477 if(sampling<0)
return nullptr;
487 if(
steps) beststeps=(*steps);
491 for(
int skip_range_check=0;skip_range_check<=1;++skip_range_check) {
493 if(!skip_range_check) {
497 if(
steps) intsteps=(*steps);
500 cout<<
"CaloGeometry::getDDE : check map"<<j<<
" skip_range_check="<<skip_range_check<<endl;
505 cout<<
"CaloGeometry::getDDE : map"<<j<<
" dist="<<newdist<<
" best dist="<<*
distance<<
" steps="<<intsteps<<endl;
510 if(
steps) beststeps=intsteps;
511 if(newdist<-0.1)
break;
◆ getDDE() [3/3]
◆ GetFCAL_ChannelMap()
◆ getFCalDDE()
const CaloDetDescrElement * CaloGeometry::getFCalDDE |
( |
int |
sampling, |
|
|
float |
x, |
|
|
float |
y, |
|
|
float |
z, |
|
|
float * |
distance = 0 , |
|
|
int * |
steps = 0 |
|
) |
| |
|
virtualinherited |
Implements ICaloGeometry.
Definition at line 550 of file CaloGeometry.cxx.
551 int isam = sampling - 20;
552 int iphi(-100000),ieta(-100000);
553 Long64_t mask1[]{0x34,0x34,0x35};
554 Long64_t mask2[]{0x36,0x36,0x37};
562 cout <<
"Error: Unable to find the closest FCal cell!" << endl;
568 Long64_t
id = (ieta << 5) + 2*iphi;
569 if(isam==2)
id+= (8<<8);
573 if(
z>0)
id+=(mask2[isam-1] << 12);
574 else id+=(mask1[isam-1] << 12);
584 float distanceX = abs(foundcell->
x()-
x) - foundcell->
dx()/2;
585 float distanceY = abs(foundcell->
y()-
y) - foundcell->
dy()/2;
◆ GetGraph()
TGraphErrors* CaloGeometry::GetGraph |
( |
unsigned int |
sample | ) |
const |
|
inlineinherited |
◆ initialize()
StatusCode FastCaloSimGeometryHelper::initialize |
( |
| ) |
|
|
finaloverridevirtual |
◆ InitRZmaps()
void CaloGeometry::InitRZmaps |
( |
| ) |
|
|
protectedvirtualinherited |
Definition at line 197 of file CaloGeometry.cxx.
225 double eta_raw=theDDE->
eta_raw();
257 double drh=theDDE->
dr()/2;
258 double dzh=theDDE->
dz();
265 rz_map_rent[
side][
sample][eta_raw]+=theDDE->
r()-drh;
266 rz_map_zent[
side][
sample][eta_raw]+=theDDE->
z()-dzh*sign_side;
267 rz_map_rext[
side][
sample][eta_raw]+=theDDE->
r()+drh;
268 rz_map_zext[
side][
sample][eta_raw]+=theDDE->
z()+dzh*sign_side;
283 double eta_raw=iter->first;
310 std::cout<<
"rz-map for side="<<
side<<
" sample="<<
sample<<
" is empty!!!"<<std::endl;
323 double eta_raw=iter->first;
325 if(eta_raw>0) sign_side=+1;
◆ 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.
◆ interfaceID()
static const InterfaceID& IFastCaloSimGeometryHelper::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ isCaloBarrel()
bool CaloGeometry::isCaloBarrel |
( |
int |
sample | ) |
const |
|
inlinevirtualinherited |
◆ LoadGeometryFromCaloDDM()
bool FastCaloSimGeometryHelper::LoadGeometryFromCaloDDM |
( |
| ) |
|
|
private |
◆ minmaxeta()
void CaloGeometry::minmaxeta |
( |
int |
sample, |
|
|
double |
eta, |
|
|
double & |
mineta, |
|
|
double & |
maxeta |
|
) |
| const |
|
virtualinherited |
◆ 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.
◆ post_process()
void CaloGeometry::post_process |
( |
int |
layer | ) |
|
|
protectedvirtualinherited |
Definition at line 121 of file CaloGeometry.cxx.
124 bool found_overlap=
false;
192 cout<<
"Run another round of ";
◆ PostProcessGeometry()
bool CaloGeometry::PostProcessGeometry |
( |
| ) |
|
|
virtualinherited |
◆ PrintMapInfo()
void CaloGeometry::PrintMapInfo |
( |
int |
i, |
|
|
int |
j |
|
) |
| |
|
virtualinherited |
◆ renounce()
◆ renounceArray()
◆ rent()
double CaloGeometry::rent |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ rext()
double CaloGeometry::rext |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ rmid()
double CaloGeometry::rmid |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ rpos()
◆ rzent()
double CaloGeometry::rzent |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ rzext()
double CaloGeometry::rzext |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ rzmid()
double CaloGeometry::rzmid |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ rzpos()
◆ SamplingName()
std::string CaloGeometry::SamplingName |
( |
int |
sample | ) |
|
|
staticinherited |
◆ SetDoGraphs()
void CaloGeometry::SetDoGraphs |
( |
bool |
dographs = true | ) |
|
|
inlineinherited |
◆ SetFCal_ChannelMap()
◆ sysInitialize()
◆ 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()
◆ zent()
double CaloGeometry::zent |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ zext()
double CaloGeometry::zext |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ zmid()
double CaloGeometry::zmid |
( |
int |
sample, |
|
|
double |
eta |
|
) |
| const |
|
virtualinherited |
◆ zpos()
◆ m_caloMgr
◆ m_cells
◆ m_cells_in_regions
◆ m_cells_in_sampling
std::vector< t_cellmap > CaloGeometry::m_cells_in_sampling |
|
protectedinherited |
◆ m_cells_in_sampling_for_phi0
std::vector< t_eta_cellmap > CaloGeometry::m_cells_in_sampling_for_phi0 |
|
protectedinherited |
◆ m_debug
std::atomic< bool > CaloGeometry::m_debug =false |
|
staticinherited |
◆ m_debug_identify
◆ m_detStore
◆ m_dographs
bool CaloGeometry::m_dographs |
|
protectedinherited |
◆ m_evtStore
◆ m_FCal_ChannelMap
◆ m_FCal_rmax
std::vector<double> CaloGeometry::m_FCal_rmax |
|
protectedinherited |
◆ m_FCal_rmin
std::vector<double> CaloGeometry::m_FCal_rmin |
|
protectedinherited |
◆ m_graph_layers
std::vector< TGraphErrors* > CaloGeometry::m_graph_layers |
|
protectedinherited |
◆ m_isCaloBarrel
std::vector< bool > CaloGeometry::m_isCaloBarrel |
|
protectedinherited |
◆ m_max_eta_sample
std::vector< double > CaloGeometry::m_max_eta_sample[2] |
|
protectedinherited |
◆ m_min_eta_sample
std::vector< double > CaloGeometry::m_min_eta_sample[2] |
|
protectedinherited |
◆ m_rent_map
std::vector< FSmap< double , double > > CaloGeometry::m_rent_map[2] |
|
protectedinherited |
◆ m_rext_map
std::vector< FSmap< double , double > > CaloGeometry::m_rext_map[2] |
|
protectedinherited |
◆ m_rmid_map
std::vector< FSmap< double , double > > CaloGeometry::m_rmid_map[2] |
|
protectedinherited |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_zent_map
std::vector< FSmap< double , double > > CaloGeometry::m_zent_map[2] |
|
protectedinherited |
◆ m_zext_map
std::vector< FSmap< double , double > > CaloGeometry::m_zext_map[2] |
|
protectedinherited |
◆ m_zmid_map
std::vector< FSmap< double , double > > CaloGeometry::m_zmid_map[2] |
|
protectedinherited |
◆ MAX_SAMPLING
The documentation for this class was generated from the following files:
float deta() const
cell deta
def retrieve(aClass, aKey=None)
JetConstituentVector::iterator iterator
virtual bool PostProcessGeometry()
std::vector< double > m_max_eta_sample[2]
virtual void post_process(int layer)
TGraph * DrawGeoSampleForPhi0(int sample, int calocol, bool print=false)
double rent(int sample, double eta) const
static const int MAX_SAMPLING
std::vector< TGraphErrors * > m_graph_layers
std::vector< double > m_FCal_rmax
Scalar phi() const
phi method
const unsigned short lookup[2401]
std::string find(const std::string &s)
return a remapped string
bool isCaloBarrel(int sample) const
tileMap_const_iterator end(int isam) const
std::vector< FSmap< double, double > > m_zext_map[2]
Scalar eta() const
pseudorapidity method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
Identifier identify(const UncalibratedMeasurement *meas)
Returns the associated identifier.
bool LoadGeometryFromCaloDDM()
virtual void addcell(const CaloDetDescrElement *cell)
double zmid(int sample, double eta) const
double rext(int sample, double eta) const
std::vector< FSmap< double, double > > m_rent_map[2]
IMessageSvc * getMessageSvc(bool quiet=false)
float eta_raw() const
cell eta_raw
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
FCAL_ChannelMap m_FCal_ChannelMap
double zent(int sample, double eta) const
static std::string SamplingName(int sample)
Identifier identify() const override final
cell identifier
std::vector< FSmap< double, double > > m_rmid_map[2]
bool getClosestFCalCellIndex(int sampling, float x, float y, int &ieta, int &iphi, int *steps=0)
std::vector< FSmap< double, double > > m_rext_map[2]
std::vector< double > m_FCal_rmin
std::map< _Key, _Tp >::iterator iterator
bool getTileID(int isam, float x, float y, int &eta, int &phi) const
-— For the new LArFCAL_ID Identifier
std::vector< double > m_min_eta_sample[2]
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
virtual void renounce()=0
void merge_into_ref(CaloGeometryLookup *ref)
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
std::vector< t_eta_cellmap > m_cells_in_sampling_for_phi0
const int CaloGeometry_calocol[24]
static std::atomic< bool > m_debug
std::vector< FSmap< double, double > > m_zmid_map[2]
calo_element_const_iterator element_begin() const
first element
std::vector< t_cellmap > m_cells_in_sampling
This class provides the client interface for accessing the detector description information common to...
virtual const CaloDetDescrElement * getDDE(Identifier identify)
CaloCell_ID::CaloSample getSampling() const
cell sampling
double deta(int sample, double eta) const
virtual void InitRZmaps()
tileMap_const_iterator begin(int isam) const
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
float eta() const
cell eta
std::vector< std::vector< CaloGeometryLookup * > > m_cells_in_regions
float phi() const
cell phi
void tileSize(int sam, int eta, int phi, float &dx, float &dy) const
std::vector< FSmap< double, double > > m_zent_map[2]
void print(std::FILE *stream, std::format_string< Args... > fmt, Args &&... args)
static std::string getSamplingName(CaloSample theSample)
Returns a string (name) for each CaloSampling.
double zext(int sample, double eta) const
double rmid(int sample, double eta) const
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
std::unique_ptr< CaloDetDescrManager > buildCaloDetDescrNoAlign(ISvcLocator *svcLocator, IMessageSvc *msgSvc)
const CaloDetDescrManager * m_caloMgr
DetDescr mgr for access to the calo helper.
Tranform iterator over pointers to iterator over const pointers.
std::vector< bool > m_isCaloBarrel