|
ATLAS Offline Software
|
#include <ALFA_LocRec.h>
|
| ALFA_LocRec (const std::string &name, ISvcLocator *pSvcLocator) |
|
| ~ALFA_LocRec () |
|
StatusCode | initialize () |
|
StatusCode | execute () |
|
StatusCode | finalize () |
|
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 |
|
|
bool | ReadGeometryDetCS () |
|
bool | StoreReconstructionGeometry (const eRPotName eRPName, const eFiberType eFType, const char *szDataDestination) |
|
void | SaveGeometry () |
|
void | ClearGeometry () |
|
StatusCode | ALFACollectionReading (std::list< MDHIT > &ListMDHits, std::list< ODHIT > &ListODHits) |
|
StatusCode | RecordCollection () |
|
StatusCode | RecordODCollection () |
|
StatusCode | ExecuteRecoMethod (const std::string &strAlgo, const eRPotName eRPName, const std::list< MDHIT > &ListMDHits, const std::list< ODHIT > &ListODHits) |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
Definition at line 79 of file ALFA_LocRec.h.
◆ StoreGateSvc_t
◆ ALFA_LocRec()
ALFA_LocRec::ALFA_LocRec |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~ALFA_LocRec()
ALFA_LocRec::~ALFA_LocRec |
( |
| ) |
|
◆ ALFACollectionReading()
StatusCode ALFA_LocRec::ALFACollectionReading |
( |
std::list< MDHIT > & |
ListMDHits, |
|
|
std::list< ODHIT > & |
ListODHits |
|
) |
| |
|
private |
Definition at line 348 of file ALFA_LocRec.cxx.
364 if(
sc.isFailure() || !mcGen)
366 return StatusCode::FAILURE;
372 for(;mcGenBeg!=mcGenEnd;++mcGenBeg)
376 MDHit.
iRPot = ((*mcGenBeg)->getStation());
377 MDHit.
iPlate = ((*mcGenBeg)->getPlate());
378 MDHit.
iFiber = ((*mcGenBeg)->getFiber());
380 ListMDHits.push_back(MDHit);
384 if(
sc.isFailure() || !mcODGen)
386 return StatusCode::FAILURE;
392 for(;mcODGenBeg!=mcODGenEnd;++mcODGenBeg)
395 ODHit.
iRPot = ((*mcODGenBeg)->getStation());
396 ODHit.
iPlate = ((*mcODGenBeg)->getPlate());
397 ODHit.
iSide = ((*mcODGenBeg)->getSide());
398 ODHit.
iFiber = ((*mcODGenBeg)->getFiber());
400 ListODHits.push_back(ODHit);
405 return StatusCode::SUCCESS;
◆ ClearGeometry()
void ALFA_LocRec::ClearGeometry |
( |
| ) |
|
|
private |
◆ 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 ALFA_LocRec::execute |
( |
| ) |
|
Definition at line 198 of file ALFA_LocRec.cxx.
203 std::list<eRPotName>::const_iterator iterRPName;
206 std::list<MDHIT> ListMDHits;
207 std::list<ODHIT> ListODHits;
213 if(!eventInfo.isValid()) {
231 return StatusCode::SUCCESS;
238 return StatusCode::SUCCESS;
249 std::string strAlgoMD;
255 eRPName = *iterRPName;
268 std::string strAlgoOD;
274 eRPName = *iterRPName;
321 return StatusCode::SUCCESS;
◆ ExecuteRecoMethod()
Definition at line 664 of file ALFA_LocRec.cxx.
670 std::list<ODRESULT> listODResults;
671 listODResults.clear();
672 Float_t fRecPosX = -9999.0;
673 Float_t fRecPosY = -9999.0;
675 std::map<string, int> mapRecoMethods;
676 mapRecoMethods.clear();
677 mapRecoMethods.insert(std::pair<string, int>(
"ODTracking", 1));
678 mapRecoMethods.insert(std::pair<string, int>(
"MDTracking", 2));
679 mapRecoMethods.insert(std::pair<string, int>(
"MDOverlap", 3));
680 mapRecoMethods.insert(std::pair<string, int>(
"CenterGravity", 4));
681 mapRecoMethods.insert(std::pair<string, int>(
"MDMultiple", 5));
682 mapRecoMethods.insert(std::pair<string, int>(
"HalfReco", 6));
683 mapRecoMethods.insert(std::pair<string, int>(
"MDGap", 7));
684 mapRecoMethods.insert(std::pair<string, int>(
"EdgeMethod", 8));
686 std::vector<int> vecFibSel;
689 switch(mapRecoMethods[strAlgo])
699 std::list<ODRESULT>::const_iterator iter;
700 for(iter=listODResults.begin(); iter!=listODResults.end(); ++iter)
702 ODResults.
iSide = (*iter).iSide;
703 ODResults.
fRecPos = (*iter).fRecPos;
704 ODResults.
fOverY = (*iter).fOverY;
705 ODResults.
iNumY = (*iter).iNumY;
707 if ((ODResults.
fRecPos != -9999.0))
710 std::fill_n(&iFibSel[0][0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
716 vecFibSel.push_back(iFibSel[ODResults.
iSide][iPlate]);
730 sc = pMDTracking->
Execute(eRPName-1, ListMDHits);
731 sc = pMDTracking->
Finalize(fRecPosX, fRecPosY);
733 if (fRecPosX!=-9999.0 && fRecPosY!=-9999.0)
736 Int_t iNumU = 0, iNumV = 0;
737 Float_t fOverlapU = -9999.0, fOverlapV = -9999.0;
738 std::fill_n(&iFibSel[0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
740 pMDTracking->
GetData(iNumU, iNumV, fOverlapU, fOverlapV, iFibSel);
742 for (
int & iLayer : iFibSel)
744 vecFibSel.push_back(iLayer);
759 sc = pMDOverlap->
Finalize(fRecPosX, fRecPosY);
762 Int_t iNumU = 0, iNumV = 0;
763 Float_t fOverlapU = -9999.0, fOverlapV = -9999.0;
764 std::fill_n(&iFibSel[0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
767 if (fRecPosX!=-9999 && fRecPosY!=-9999)
770 for (
int & iLayer : iFibSel)
772 vecFibSel.push_back(iLayer);
787 sc = pCenterGravity->
Finalize(fRecPosX, fRecPosY);
790 Int_t iNumU = 0, iNumV = 0;
791 Float_t fOverlapU = -9999.0, fOverlapV = -9999.0;
792 std::fill_n(&iFibSel[0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
794 pCenterGravity->
GetData(iFibSel);
795 if (fRecPosX!=-9999 && fRecPosY!=-9999)
798 for (
int & iLayer : iFibSel)
800 vecFibSel.push_back(iLayer);
806 delete pCenterGravity;
818 sc = pMDMultiple->
Finalize(fRecPosX, fRecPosY);
822 std::fill_n(&iFibSel[0][0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
823 std::fill_n(&fOverU[0],
sizeof(fOverU)/
sizeof(Float_t), -9999.0);
824 std::fill_n(&fOverV[0],
sizeof(fOverV)/
sizeof(Float_t), -9999.0);
825 memset(&iNumU, 0,
sizeof(iNumU));
826 memset(&iNumV, 0,
sizeof(iNumV));
828 pMDMultiple->
GetData(iNumU, iNumV, fOverU, fOverV, iFibSel);
829 for (Int_t iTrack=0; iTrack<
NTRACK; iTrack++)
831 if (fRecPosX[iTrack] != -9999.0 && fRecPosY[iTrack] != -9999.0)
836 vecFibSel.push_back(iFibSel[iTrack][iLayer]);
851 Int_t iNumU[2] = {0, 0};
852 Int_t iNumV[2] = {0, 0};
855 Float_t fOverlapU[2] = {-9999, -9999};
856 Float_t fOverlapV[2] = {-9999, -9999};
857 Float_t fRecPosX[2] = {-9999, -9999};
858 Float_t fRecPosY[2] = {-9999, -9999};
861 std::fill_n(&iFibSel[0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
863 std::vector<int> vecFibSel0;
864 std::vector<int> vecFibSel1;
868 if (eRPName==1 || eRPName==3 || eRPName==6 || eRPName==8)
880 sc = pHalfReco->
Execute(eRPName-1, ListMDHits);
881 sc = pHalfReco->
Finalize(fRecPosX[0], fRecPosY[0]);
883 pHalfReco->
GetData(iNumU[0], iNumV[0], fOverlapU[0], fOverlapV[0], iFibSel);
885 for (
int & iLayer : iFibSel)
887 vecFibSel0.push_back(iLayer);
891 sc = pHalfReco->
Execute(eRPName-1, ListMDHits);
892 sc = pHalfReco->
Finalize(fRecPosX[1], fRecPosY[1]);
894 pHalfReco->
GetData(iNumU[1], iNumV[1], fOverlapU[1], fOverlapV[1], iFibSel);
896 for (
int & iLayer : iFibSel)
898 vecFibSel1.push_back(iLayer);
901 if (fRecPosX[0]!=-9999.0 && fRecPosY[0]!=-9999.0 && fRecPosX[1]!=-9999.0 && fRecPosY[1]!=-9999.0)
924 std::fill_n(&iFibSel[0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
925 std::fill_n(&fOverU[0],
sizeof(fOverU)/
sizeof(Float_t), -9999.0);
926 std::fill_n(&fOverV[0],
sizeof(fOverV)/
sizeof(Float_t), -9999.0);
928 pMDGap->
GetData(iNumU, iNumV, fOverU, fOverV, iFibSel);
929 for (Int_t iTrack=0; iTrack<
NTRACK; iTrack++)
931 if (fRecPosX[iTrack] != -9999.0 && fRecPosY[iTrack] != -9999.0)
934 for (
int & iLayer : iFibSel)
936 vecFibSel.push_back(iLayer);
957 std::fill_n(&iFibSel[0],
sizeof(iFibSel)/
sizeof(Int_t), -9999);
958 std::fill_n(&fOverU[0],
sizeof(fOverU)/
sizeof(Float_t), -9999.0);
959 std::fill_n(&fOverV[0],
sizeof(fOverV)/
sizeof(Float_t), -9999.0);
962 std::vector<ALFA_EdgeMethod::Track> tracks;
965 for (UInt_t iTrack=0; iTrack<tracks.size(); iTrack++)
967 pEdgeMethod->
selectedFibers(eRPName - 1, tracks.at(iTrack), iFibSel);
969 iNumU[iTrack] = tracks.at(iTrack).first.second;
970 iNumV[iTrack] = tracks.at(iTrack).second.second;
971 fOverU[iTrack] = tracks.at(iTrack).first.first.second;
972 fOverV[iTrack] = tracks.at(iTrack).second.first.second;
973 fRecPosX[iTrack] = 0.5*TMath::Sqrt2()*(-tracks.at(iTrack).first.first.first-tracks.at(iTrack).second.first.first);
974 fRecPosY[iTrack] = 0.5*TMath::Sqrt2()*(-tracks.at(iTrack).first.first.first+tracks.at(iTrack).second.first.first);
976 if (fRecPosX[iTrack] != -9999.0 && fRecPosY[iTrack] != -9999.0)
979 for (
int & iLayer : iFibSel)
981 vecFibSel.push_back(iLayer);
989 sc = StatusCode::SUCCESS;
995 std::cout <<
"strAlgo: " << strAlgo << std::endl;
996 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();
◆ finalize()
StatusCode ALFA_LocRec::finalize |
( |
| ) |
|
◆ initialize()
StatusCode ALFA_LocRec::initialize |
( |
| ) |
|
Definition at line 143 of file ALFA_LocRec.cxx.
165 return StatusCode::FAILURE;
177 ATH_MSG_ERROR(
"m_pGeometryReader: unable to record to StoreGate");
195 return StatusCode::SUCCESS;
◆ 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.
◆ ReadGeometryDetCS()
bool ALFA_LocRec::ReadGeometryDetCS |
( |
| ) |
|
|
private |
Definition at line 408 of file ALFA_LocRec.cxx.
412 Int_t nPlateID, nFiberID;
417 std::list<eRPotName>::const_iterator iterRPName;
432 eRPName = *iterRPName;
442 m_faMD[eRPName-1][2*nPlateID+1][nFiberID] = FiberParams.
fSlope;
443 m_fbMD[eRPName-1][2*nPlateID+1][nFiberID] = FiberParams.
fOffset;
444 m_fzMD[eRPName-1][2*nPlateID+1][nFiberID] = FiberParams.
fZPos;
455 m_faMD[eRPName-1][2*nPlateID][nFiberID] = FiberParams.
fSlope;
456 m_fbMD[eRPName-1][2*nPlateID][nFiberID] = FiberParams.
fOffset;
457 m_fzMD[eRPName-1][2*nPlateID][nFiberID] = FiberParams.
fZPos;
469 for (nPlateID = 0; nPlateID <
ODPLATESCNT; nPlateID++)
471 for (nFiberID = 0; nFiberID <
ODFIBERSCNT; nFiberID++)
476 m_faOD[eRPName-1][nPlateID][0][nFiberID+15] = FiberParams.
fSlope;
477 m_fbOD[eRPName-1][nPlateID][0][nFiberID+15] = FiberParams.
fOffset;
478 m_fzOD[eRPName-1][nPlateID][0][nFiberID+15] = FiberParams.
fZPos;
488 m_faOD[eRPName-1][nPlateID][0][nFiberID] = FiberParams.
fSlope;
489 m_fbOD[eRPName-1][nPlateID][0][nFiberID] = FiberParams.
fOffset;
490 m_fzOD[eRPName-1][nPlateID][0][nFiberID] = FiberParams.
fZPos;
502 m_faOD[eRPName-1][nPlateID][1][14-nFiberID] = FiberParams.
fSlope;
503 m_fbOD[eRPName-1][nPlateID][1][14-nFiberID] = FiberParams.
fOffset;
504 m_fzOD[eRPName-1][nPlateID][1][14-nFiberID] = FiberParams.
fZPos;
508 m_faOD[eRPName-1][nPlateID][1][nFiberID+15] = FiberParams.
fSlope;
509 m_fbOD[eRPName-1][nPlateID][1][nFiberID+15] = FiberParams.
fOffset;
510 m_fzOD[eRPName-1][nPlateID][1][nFiberID+15] = FiberParams.
fZPos;
523 m_faOD[eRPName-1][nPlateID][1][29-nFiberID] = FiberParams.
fSlope;
524 m_fbOD[eRPName-1][nPlateID][1][29-nFiberID] = FiberParams.
fOffset;
525 m_fzOD[eRPName-1][nPlateID][1][29-nFiberID] = FiberParams.
fZPos;
529 m_faOD[eRPName-1][nPlateID][1][nFiberID] = FiberParams.
fSlope;
530 m_fbOD[eRPName-1][nPlateID][1][nFiberID] = FiberParams.
fOffset;
531 m_fzOD[eRPName-1][nPlateID][1][nFiberID] = FiberParams.
fZPos;
◆ RecordCollection()
StatusCode ALFA_LocRec::RecordCollection |
( |
| ) |
|
|
private |
◆ RecordODCollection()
StatusCode ALFA_LocRec::RecordODCollection |
( |
| ) |
|
|
private |
◆ renounce()
◆ renounceArray()
◆ SaveGeometry()
void ALFA_LocRec::SaveGeometry |
( |
| ) |
|
|
private |
Definition at line 601 of file ALFA_LocRec.cxx.
608 std::list<eRPotName>::const_iterator iterRPName;
618 ATH_MSG_DEBUG(
"The ALFA Fiber geometry was stored in the "<<szFilename<<
" file");
623 ATH_MSG_DEBUG(
"The ALFA Fiber geometry was stored in the "<<szFilename<<
" file");
628 ATH_MSG_DEBUG(
"The ALFA Fiber geometry was stored in the "<<szFilename<<
" file");
642 ATH_MSG_DEBUG(
"The ODFiber geometry was stored in the "<<szFilename<<
" file");
647 ATH_MSG_DEBUG(
"The ODFiber geometry was stored in the "<<szFilename<<
" file");
652 ATH_MSG_DEBUG(
"The ODFiber geometry was stored in the "<<szFilename<<
" file");
◆ StoreReconstructionGeometry()
Definition at line 550 of file ALFA_LocRec.cxx.
552 ATH_MSG_DEBUG(
"begin ALFA_LocRec::StoreReconstructionGeometry()");
554 Int_t iLayer, iFiber, iPlate, iSide;
555 Float_t fParamB, fZ, fSlope;
558 pFile = fopen(szDataDestination,
"w");
559 if(pFile==NULL)
return false;
560 fprintf(pFile,
"xxxxxxxxxxxxxxxxxxx\n");
563 fprintf(pFile,
"20\n");
568 fSlope=
m_faMD[eRPName-1][iLayer][iFiber];
569 fParamB=
m_fbMD[eRPName-1][iLayer][iFiber];
570 fZ=
m_fzMD[eRPName-1][iLayer][iFiber];
572 fprintf(pFile,
" %2d %2d %7.5f %7.4f %7.3f\n", iLayer+1, iFiber+1, fSlope, fParamB, fZ);
578 fprintf(pFile,
"6\n");
585 fSlope=
m_faOD[eRPName-1][iPlate][iSide][iFiber];
586 fParamB=
m_fbOD[eRPName-1][iPlate][iSide][iFiber];
587 fZ=
m_fzOD[eRPName-1][iPlate][iSide][iFiber];
589 fprintf(pFile,
" %2d %2d %7.5f %7.4f %7.3f\n", (2*iPlate+iSide+1), iFiber+1, fSlope, fParamB, fZ);
596 ATH_MSG_DEBUG(
"end ALFA_LocRec::StoreReconstructionGeometry()");
◆ 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_bEdgeMethod_Opt_Sisters
Bool_t ALFA_LocRec::m_bEdgeMethod_Opt_Sisters |
|
private |
◆ m_bEdgeMethod_Opt_UseGaps
Bool_t ALFA_LocRec::m_bEdgeMethod_Opt_UseGaps |
|
private |
◆ m_Config
◆ m_detStore
◆ m_eventInfoKey
◆ m_eventNum
UInt_t ALFA_LocRec::m_eventNum |
|
private |
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_faMD
◆ m_faOD
◆ m_fbMD
◆ m_fbOD
◆ m_fDistanceCutOD
Float_t ALFA_LocRec::m_fDistanceCutOD |
|
private |
◆ m_fOverlapCutMD
Float_t ALFA_LocRec::m_fOverlapCutMD |
|
private |
◆ m_fzMD
◆ m_fzOD
◆ m_iDataType
Int_t ALFA_LocRec::m_iDataType |
|
private |
◆ m_iEvent
Int_t ALFA_LocRec::m_iEvent |
|
private |
◆ m_iLayerCutOD
Float_t ALFA_LocRec::m_iLayerCutOD |
|
private |
◆ m_iMultiplicityCutMD
Int_t ALFA_LocRec::m_iMultiplicityCutMD |
|
private |
◆ m_iMultiplicityCutOD
Int_t ALFA_LocRec::m_iMultiplicityCutOD |
|
private |
◆ m_iNumLayerCutMD
Int_t ALFA_LocRec::m_iNumLayerCutMD |
|
private |
◆ m_iUVCutMD
Int_t ALFA_LocRec::m_iUVCutMD |
|
private |
◆ m_iUVCutMDHalfReco
Int_t ALFA_LocRec::m_iUVCutMDHalfReco |
|
private |
◆ m_ListExistingRPots
std::list<eRPotName> ALFA_LocRec::m_ListExistingRPots |
|
private |
◆ m_pGeometryReader
◆ m_pLocRecEvCollection
◆ m_pLocRecEvent
◆ m_pLocRecODEvCollection
◆ m_pLocRecODEvent
◆ m_strAlgoMD
std::string ALFA_LocRec::m_strAlgoMD |
|
private |
◆ m_strAlgoOD
std::string ALFA_LocRec::m_strAlgoOD |
|
private |
◆ m_strCollectionName
std::string ALFA_LocRec::m_strCollectionName |
|
private |
◆ m_strKeyGeometryForReco
std::string ALFA_LocRec::m_strKeyGeometryForReco |
|
private |
◆ m_strKeyLocRecEvCollection
std::string ALFA_LocRec::m_strKeyLocRecEvCollection |
|
private |
◆ m_strKeyLocRecODEvCollection
std::string ALFA_LocRec::m_strKeyLocRecODEvCollection |
|
private |
◆ m_strODCollectionName
std::string ALFA_LocRec::m_strODCollectionName |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vecListAlgoMD
std::vector<std::string> ALFA_LocRec::m_vecListAlgoMD |
|
private |
◆ m_vecListAlgoOD
std::vector<std::string> ALFA_LocRec::m_vecListAlgoOD |
|
private |
◆ m_vhka
The documentation for this class was generated from the following files:
void GetData(Int_t(&iNumU)[MAXTRACKNUM], Int_t(&iNumV)[MAXTRACKNUM], Float_t(&fOvU)[MAXTRACKNUM], Float_t(&fOvV)[MAXTRACKNUM], Int_t(&iFibSel)[MAXTRACKNUM][ALFALAYERSCNT *ALFAPLATESCNT])
Float_t m_fzMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
StatusCode Execute(Int_t iRPot, const std::list< MDHIT > &ListMDHits)
bool StoreReconstructionGeometry(const eRPotName eRPName, const eFiberType eFType, const char *szDataDestination)
Float_t m_fbOD[RPOTSCNT][ODPLATESCNT][ODSIDESCNT][ODLAYERSCNT *ODFIBERSCNT]
Const iterator class for DataVector/DataList.
std::string m_strODCollectionName
Bool_t m_bEdgeMethod_Opt_UseGaps
void GetData(Int_t &NumU, Int_t &NumV, Float_t &OL_U, Float_t &OL_V, Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
std::list< eRPotName > m_ListExistingRPots
GEOMETRYCONFIGURATION m_Config
Int_t m_iMultiplicityCutOD
StatusCode Execute(Int_t iRPot, const std::list< MDHIT > &ListMDHits)
StatusCode Initialize(Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iMultiplicityCut, Int_t iUVCut, Float_t fOverlapCut)
std::string m_strKeyGeometryForReco
StatusCode RecordODCollection()
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
eGeoSourceType GetRPGeometryType(const eRPotName eRPName, eFiberType eFType)
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
const char * GetRPotLabel(const eRPotName eRPName)
ALFA_LocRecODEvent * m_pLocRecODEvent
bool GetVFiberParams(PFIBERPARAMS pFiberParams, const eRPotName eRPName, const int nPlateID, const int nFiberID)
void GetData(Int_t(&iFibSel)[ODSIDESCNT][ODPLATESCNT])
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
std::string m_strKeyLocRecEvCollection
StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos)
StatusCode Finalize(std::list< ODRESULT > *pListResults)
ALFA_LocRecODEvCollection * m_pLocRecODEvCollection
Bool_t m_bEdgeMethod_Opt_Sisters
StatusCode Execute(const std::list< MDHIT > &ListMDHits)
Bool_t EdgeMethod(UInt_t no_Detector, std::vector< Track > &tracks)
std::string m_strKeyLocRecODEvCollection
std::string strODConnString
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
std::string strMDConnString
virtual void setOwner(IDataHandleHolder *o)=0
StatusCode Finalize(Float_t(&fRecXPos)[MAXTRACKNUM], Float_t(&fRecYPos)[MAXTRACKNUM])
StatusCode Initialize(Int_t iRPot, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iMultiplicityCut, Int_t iNumLayerCut, Int_t iUVCut, Float_t fOverlapCut)
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos)
void GetData(Int_t(&iNumU)[MAXTRACKNUM], Int_t(&iNumV)[MAXTRACKNUM], Float_t(&fOvU)[MAXTRACKNUM], Float_t(&fOvV)[MAXTRACKNUM], Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
void GetData(Int_t &iNumU, Int_t &iNumV, Float_t &fOvU, Float_t &fOvV, Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
StatusCode Finalize(Float_t(&fRecXPos)[MAXTRACKNUM], Float_t(&fRecYPos)[MAXTRACKNUM])
std::vector< std::string > m_vecListAlgoMD
virtual StatusCode sysInitialize() override
Override sysInitialize.
std::string m_strCollectionName
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
ALFA_LocRecEvent * m_pLocRecEvent
StatusCode ExecuteRecoMethod(const std::string &strAlgo, const eRPotName eRPName, const std::list< MDHIT > &ListMDHits, const std::list< ODHIT > &ListODHits)
StatusCode Execute(Int_t iRPot, const std::list< ODHIT > &ListODHits, Float_t faOD[RPOTSCNT][ODPLATESCNT][ODSIDESCNT][ODLAYERSCNT *ODFIBERSCNT], Float_t fbOD[RPOTSCNT][ODPLATESCNT][ODSIDESCNT][ODLAYERSCNT *ODFIBERSCNT])
StatusCode Initialize(const eRPotName &eRPName, const std::list< MDHIT > &ListMDHits, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fzMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT])
::StatusCode StatusCode
StatusCode definition for legacy code.
void GetData(Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
StatusCode Initialize(Int_t fMultiplicityCut, Float_t fDistanceCut, Int_t iLayerCut, Int_t iDataType)
StatusCode ALFACollectionReading(std::list< MDHIT > &ListMDHits, std::list< ODHIT > &ListODHits)
bool Initialize(const PGEOMETRYCONFIGURATION pConfig, eFiberCoordSystem eFCoordSystem)
ALFA_GeometryReader * m_pGeometryReader
void selectedFibers(UInt_t no_Detector, Track &track, Int_t *selectedFib)
CFGRPPOSPARAMS CfgRPosParams[RPOTSCNT]
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
StatusCode Execute(const std::list< MDHIT > &ListMDHits)
StatusCode Initialize(const eRPotName &eRPName, const std::list< MDHIT > &ListMDHits, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fzMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT])
void GetData(Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
void Initialize(Int_t iRPot, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], const std::list< MDHIT > &ListMDHits)
std::vector< std::string > m_vecListAlgoOD
Float_t m_faOD[RPOTSCNT][ODPLATESCNT][ODSIDESCNT][ODLAYERSCNT *ODFIBERSCNT]
value_type push_back(value_type pElem)
Add an element to the end of the collection.
bool GetODFiberParams(PFIBERPARAMS pFiberParams, const eFiberType eFType, const eRPotName eRPName, const int nPlateID, const int nFiberID)
StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos)
ALFA_LocRecEvCollection * m_pLocRecEvCollection
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
Float_t m_fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
DataObjIDColl m_extendedExtraObjects
bool GetUFiberParams(PFIBERPARAMS pFiberParams, const eRPotName eRPName, const int nPlateID, const int nFiberID)
StatusCode Initialize(Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iHalf, Int_t fMultiplicityCut, Int_t iUVCut, Float_t fOverlapCut)
void GetListOfExistingRPotIDs(std::list< eRPotName > *pListRPotName)
#define ATH_MSG_WARNING(x)
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
AthAlgorithm()
Default constructor:
std::string strRPMetrologyConnString
StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos)
Float_t m_faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
StatusCode Initialize(Int_t iRPot, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iUVCut, Float_t fOverlapCut)
StatusCode RecordCollection()
Int_t m_iMultiplicityCutMD
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
Float_t m_fzOD[RPOTSCNT][ODPLATESCNT][ODSIDESCNT][ODLAYERSCNT *ODFIBERSCNT]