|
ATLAS Offline Software
|
#include <FPGATrackSimGenScanMonitoring.h>
|
| FPGATrackSimGenScanMonitoring (const std::string &, const std::string &, const IInterface *) |
|
virtual StatusCode | initialize () override |
|
StatusCode | registerHistograms (unsigned nLayers, const FPGATrackSimGenScanBinningBase *binning, double rin, double rout) |
|
void | allocateDataFlowCounters () |
|
void | resetDataFlowCounters () |
|
StatusCode | registerGraphs () |
|
const std::string | dir () const |
|
void | parseTruthInfo (std::vector< FPGATrackSimTruthTrack > const *truthtracks, bool isSingleParticle, const FPGATrackSimGenScanArray< int > &validBin) |
|
void | fillHitLevelInput (const FPGATrackSimHit *hit) |
|
void | fillBinLevelOutput (const FPGATrackSimGenScanBinningBase::IdxSet &idx, const FPGATrackSimGenScanTool::BinEntry &data, const std::vector< std::vector< const FPGATrackSimGenScanTool::StoredHit * > > &hitsByLayer) |
|
void | fillPairingHits (std::vector< const FPGATrackSimGenScanTool::StoredHit * > const *lastlyr, std::vector< const FPGATrackSimGenScanTool::StoredHit * > const *lastlastlyr) |
|
void | fillPairFilterCuts (const FPGATrackSimGenScanTool::HitPair &pair) |
|
void | fillPairSetFilterCut (std::vector< TH1D * > &histset, double val, const FPGATrackSimGenScanTool::HitPair &pair, const FPGATrackSimGenScanTool::HitPair &lastpair, bool nminus1) |
|
void | fillInputSummary (const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits, const FPGATrackSimGenScanArray< int > &validSlice, const FPGATrackSimGenScanArray< int > &validScan) |
|
void | fillOutputSummary (const FPGATrackSimGenScanArray< int > &validSlice, const FPGATrackSimGenScanArray< int > &validSliceAndScan) |
|
void | fillBuildGroupsWithPairs (const std::vector< FPGATrackSimGenScanTool::IntermediateState > &states, unsigned allowed_misses) |
|
void | incrementInputPerSlice (const std::vector< unsigned > &sliceidx) |
|
void | incrementInputPerScan (const FPGATrackSimGenScanBinningBase::IdxSet &idx, const std::pair< unsigned, unsigned > &rowRange, const FPGATrackSimHit *hit) |
|
void | sliceCheck (const std::vector< unsigned > &sliceidx) |
|
void | pairFilterCheck (const FPGATrackSimGenScanTool::HitPairSet &pairs, const FPGATrackSimGenScanTool::HitPairSet &filteredpairs, bool passedPairFilter) |
|
void | pairSetFilterCheck (const FPGATrackSimGenScanTool::HitPairSet &filteredpairs, const std::vector< FPGATrackSimGenScanTool::HitPairSet > &pairsets, unsigned threshold) |
|
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 |
|
|
void | setBinPlotsActive (const FPGATrackSimGenScanBinningBase::IdxSet &idx) |
|
unsigned | pairpairCategory (const FPGATrackSimGenScanTool::HitPair &pair, const FPGATrackSimGenScanTool::HitPair &lastpair) const |
|
template<typename HistType , typename... HistDef> |
StatusCode | makeAndRegHist (HistType *&ptr, HistDef... histargs) |
|
template<typename HistType , typename... HistDef> |
StatusCode | makeAndRegHistVector (std::vector< HistType * > &vec, unsigned len, const std::vector< std::string > *namevec, const char *namebase, HistDef... histargs) |
|
StatusCode | regGraph (TGraph *g) const |
|
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...
|
|
|
ServiceHandle< ITHistSvc > | m_tHistSvc {this, "THistSvc", "THistSvc"} |
|
Gaudi::Property< std::string > | m_dir {this, "dir", {"/GENSCAN/"}, "String name of output directory"} |
|
unsigned | m_nLayers = 0 |
|
const FPGATrackSimGenScanBinningBase * | m_binning {nullptr} |
|
double | m_rin =0.0 |
|
double | m_rout =0.0 |
|
std::vector< FPGATrackSimTruthTrack > const * | m_truthtracks {nullptr} |
|
bool | m_isSingleParticle = false |
|
bool | m_truthIsValid = false |
|
FPGATrackSimTrackPars | m_truthpars |
|
FPGATrackSimGenScanBinningBase::IdxSet | m_truthbin |
|
FPGATrackSimGenScanBinningBase::ParSet | m_truthparset |
|
bool | m_binPlotsActive = false |
|
std::vector< unsigned > | m_hitsCntByLayer |
|
FPGATrackSimGenScanArray< int > | m_inputhitsperslice |
|
FPGATrackSimGenScanArray< int > | m_inputhitsperrow |
|
FPGATrackSimGenScanArray< int > | m_outputhitsperslice |
|
FPGATrackSimGenScanArray< int > | m_outputhitsperrow |
|
FPGATrackSimGenScanArray< int > | m_outputroadsperrow |
|
std::vector< TH2D * > | m_rZ_allhits |
|
TH1D * | m_truthpars_hists [5] = {0, 0, 0, 0, 0} |
|
std::vector< TH1D * > | m_phiResidual |
|
std::vector< TH1D * > | m_etaResidual |
|
std::vector< TH1D * > | m_phiTrueBinShift |
|
std::vector< TH1D * > | m_etaTrueBinShift |
|
TH1D * | m_inputHits = 0 |
|
TH1D * | m_inputHitsPerSlice = 0 |
|
TH1D * | m_outputHitsPerSlice = 0 |
|
TH1D * | m_inputHitsPerRow = 0 |
|
TH1D * | m_outputHitsPerRow = 0 |
|
TH1D * | m_outputRoadsPerRow = 0 |
|
TH1D * | m_outputHitsPerBin = 0 |
|
TH2D * | m_hitsPerLayer2D = 0 |
|
TH1D * | m_hitsPerLayer = 0 |
|
TH1D * | m_hitsLoadedPerLayer = 0 |
|
TH1D * | m_hitLyrsAllBins = 0 |
|
TH1D * | m_phiShift_road = 0 |
|
TH1D * | m_etaShift_road = 0 |
|
TH2D * | m_phiShift2D_road = 0 |
|
TH2D * | m_etaShift2D_road = 0 |
|
TH2D * | m_hitsPerLayer_road = 0 |
|
TH1D * | m_pairs = 0 |
|
TH1D * | m_filteredpairs = 0 |
|
TH1D * | m_pairsets = 0 |
|
TH2D * | m_unpairedHits = 0 |
|
TH2D * | m_pairsetsIncr = 0 |
|
TH2D * | m_pairsetsHits = 0 |
|
TH2D * | m_binStagesIncr = 0 |
|
TH2D * | m_totalInputIncr = 0 |
|
TH1D * | m_pairinghits = 0 |
|
TH1D * | m_roadFilterFlow = 0 |
|
TH1D * | m_deltaPhi = 0 |
|
TH1D * | m_deltaEta = 0 |
|
TH1D * | m_deltaPhiDR = 0 |
|
TH1D * | m_deltaEtaDR = 0 |
|
TH1D * | m_phiOutExtrap = 0 |
|
TH1D * | m_phiInExtrap = 0 |
|
TH1D * | m_phiOutExtrapCurveLimit =0 |
|
TH1D * | m_phiInExtrapCurveLimit =0 |
|
TH1D * | m_etaOutExtrap = 0 |
|
TH1D * | m_etaInExtrap = 0 |
|
std::vector< TH1D * > | m_deltaPhiByLyr |
|
std::vector< TH1D * > | m_deltaEtaByLyr |
|
unsigned | m_nminus1_idx = 6 |
|
TH2D * | m_pairMatchPhi2D = 0 |
|
TH2D * | m_pairMatchEta2D = 0 |
|
eventDispSet | m_allHitsGraph {std::string("allHits"), 10} |
|
eventDispSet | m_roadGraph {std::string("road"), 10} |
|
eventDispSet | m_lostPairFilterGraph {std::string("lostpairfilter"), 10} |
|
eventDispSet | m_passPairFilterGraph {std::string("passpairfilter"), 10} |
|
eventDispSet | m_lostPairSetFilterGraph {std::string("lostpairsetfilter"), 10} |
|
eventDispSet | m_passPairSetFilterGraph {std::string("passpairsetfilter"), 10} |
|
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 |
|
◆ StoreGateSvc_t
◆ FPGATrackSimGenScanMonitoring()
FPGATrackSimGenScanMonitoring::FPGATrackSimGenScanMonitoring |
( |
const std::string & |
algname, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
ifc |
|
) |
| |
◆ allocateDataFlowCounters()
void FPGATrackSimGenScanMonitoring::allocateDataFlowCounters |
( |
| ) |
|
◆ 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()
◆ dir()
const std::string FPGATrackSimGenScanMonitoring::dir |
( |
| ) |
const |
|
inline |
◆ 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
◆ fillBinLevelOutput()
◆ fillBuildGroupsWithPairs()
◆ fillHitLevelInput()
◆ fillInputSummary()
◆ fillOutputSummary()
◆ fillPairFilterCuts()
◆ fillPairingHits()
Definition at line 437 of file FPGATrackSimGenScanMonitoring.cxx.
442 auto size_if_nonzero_ptr =
443 [](std::vector<const FPGATrackSimGenScanTool::StoredHit *>
const *
ptr) {
452 size_if_nonzero_ptr(lastlastlyr));
◆ fillPairSetFilterCut()
◆ incrementInputPerScan()
◆ incrementInputPerSlice()
void FPGATrackSimGenScanMonitoring::incrementInputPerSlice |
( |
const std::vector< unsigned > & |
sliceidx | ) |
|
|
inline |
◆ initialize()
StatusCode FPGATrackSimGenScanMonitoring::initialize |
( |
| ) |
|
|
overridevirtual |
Definition at line 19 of file FPGATrackSimGenScanMonitoring.cxx.
22 auto props = this->getProperties();
23 for( Gaudi::Details::PropertyBase* prop : props ) {
24 if (prop->ownerTypeName()==this->type()) {
25 ATH_MSG_DEBUG(
"Property:\t" << prop->name() <<
"\t : \t" << prop->toString());
31 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.
◆ makeAndRegHist()
template<typename HistType , typename... HistDef>
StatusCode FPGATrackSimGenScanMonitoring::makeAndRegHist |
( |
HistType *& |
ptr, |
|
|
HistDef... |
histargs |
|
) |
| |
|
inlineprivate |
◆ makeAndRegHistVector()
template<typename HistType , typename... HistDef>
StatusCode FPGATrackSimGenScanMonitoring::makeAndRegHistVector |
( |
std::vector< HistType * > & |
vec, |
|
|
unsigned |
len, |
|
|
const std::vector< std::string > * |
namevec, |
|
|
const char * |
namebase, |
|
|
HistDef... |
histargs |
|
) |
| |
|
inlineprivate |
Definition at line 288 of file FPGATrackSimGenScanMonitoring.h.
291 for (
unsigned i = 0;
i < len;
i++) {
293 std::string
name = std::string(namebase);
297 if (namevec->size()==len) {
298 name += (*namevec)[
i];
300 return StatusCode::FAILURE;
307 return StatusCode::SUCCESS;
◆ 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.
◆ pairFilterCheck()
◆ pairpairCategory()
Definition at line 479 of file FPGATrackSimGenScanMonitoring.cxx.
483 int minlyr =
std::min(lastpair.first->layer, lastpair.second->layer);
484 minlyr =
std::min(minlyr, pair.first->layer);
485 minlyr =
std::min(minlyr, pair.second->layer);
488 ((1 << lastpair.first->layer) | (1 << lastpair.second->layer) |
489 (1 << pair.first->layer) | (1 << pair.second->layer));
490 hitbits = hitbits >> minlyr;
492 int hitlyrs = __builtin_popcount(hitbits);
494 assert(hitbits & 0
x1);
500 }
else if (hitlyrs == 3) {
501 if (hitbits == 0b111)
503 if ((lastpair.first->layer == pair.second->layer) ||
504 (pair.first->layer == lastpair.second->layer)) {
509 }
else if ((hitbits == 0b1101) || (hitbits == 0b1011))
519 << lastpair.second->layer <<
" " << pair.first->layer <<
" "
520 << pair.second->layer <<
" : " << minlyr <<
" "
521 << std::bitset<16>(hitbits));
◆ pairSetFilterCheck()
◆ parseTruthInfo()
◆ regGraph()
StatusCode FPGATrackSimGenScanMonitoring::regGraph |
( |
TGraph * |
g | ) |
const |
|
inlineprivate |
◆ registerGraphs()
StatusCode FPGATrackSimGenScanMonitoring::registerGraphs |
( |
| ) |
|
Definition at line 210 of file FPGATrackSimGenScanMonitoring.cxx.
213 std::vector<FPGATrackSimGenScanMonitoring::eventDispSet *> allsets(
219 for (
auto&
set : allsets) {
223 return StatusCode::SUCCESS;
◆ registerHistograms()
Definition at line 35 of file FPGATrackSimGenScanMonitoring.cxx.
47 double drScale = (rout-rin) / nLayers;
48 ATH_MSG_INFO(
"Hist scales phi: " << phiScale <<
" eta: " << etaScale <<
" dr:" << drScale);
64 "RZ_allhits",
"; Z [mm] ; R [mm] ", 500, -2000, 2000, 500, 0, 500));
67 "phiResidual",
"phi residual [mm]", 1000, -10, 10));
69 "etaResidual",
"eta residual [mm]", 1000, -10, 10));
72 "phiTrueBinShift",
"phi TrueBinShift [mm]", 1000, -10, 10));
74 "etaTrueBinShift",
"eta TrueBinShift [mm]", 1000, -10, 10));
85 400, -phiScale, phiScale, 100, 0, 400));
87 400, -etaScale, etaScale, 100, 0, 400));
111 ";Phi Out Extrap w/ Curve Limit", 2000, -phiScale, phiScale));
113 ";Phi In Extrap w/ Curve Limit", 2000, -phiScale, phiScale));
126 "PairSetMatchPhi",
";PairSet Match Phi [mm]", 500,
127 -1*phiScale / drScale, phiScale / drScale));
130 "PairSetMatchEta",
";PairSet Match Eta [mm]", 500,
131 -1*etaScale / drScale, etaScale / drScale));
134 "DeltaDeltaPhi",
";DeltaDelta Phi [mm]", 500, -1.0*phiScale / drScale,
135 phiScale / drScale));
138 "DeltaDeltaEta",
";DeltaDelta Eta [mm]", 500, -1.0 * etaScale / drScale,
139 1.0 * etaScale / drScale));
142 ";Phi Curvature ", 500,
143 -0.1 * phiScale / drScale / drScale,
144 0.1 * phiScale / drScale / drScale));
147 ";Eta Curvature ", 500,
148 -0.1 * etaScale / drScale / drScale,
149 0.1 * etaScale / drScale / drScale));
152 ";Delta Phi Curvature ", 500,
153 -0.1 * phiScale / drScale / drScale,
154 0.1 * phiScale / drScale / drScale));
157 ";Delta Eta Curvature ", 500,
158 -0.1 * etaScale / drScale / drScale,
159 0.1 * etaScale / drScale / drScale));
162 ";Phi Out Extrap Curved", 2000, -phiScale,
166 ";Phi In Extrap Curved ", 2000, -phiScale,
169 ";PairSet Match Phi vs dRin [mm]", 100, 0, 100, 500,
170 -100.0 * phiScale, 100.0 * phiScale));
172 ";PairSet Match Eta vs dRin [mm]", 100, 0, 100, 500,
173 -100.0 * etaScale, 100.0 * etaScale));
181 return StatusCode::SUCCESS;
◆ renounce()
◆ renounceArray()
◆ resetDataFlowCounters()
void FPGATrackSimGenScanMonitoring::resetDataFlowCounters |
( |
| ) |
|
◆ setBinPlotsActive()
◆ sliceCheck()
void FPGATrackSimGenScanMonitoring::sliceCheck |
( |
const std::vector< unsigned > & |
sliceidx | ) |
|
◆ 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()
◆ m_allHitsGraph
eventDispSet FPGATrackSimGenScanMonitoring::m_allHitsGraph {std::string("allHits"), 10} |
|
private |
◆ m_binning
◆ m_binPlotsActive
bool FPGATrackSimGenScanMonitoring::m_binPlotsActive = false |
|
private |
◆ m_binStagesIncr
TH2D* FPGATrackSimGenScanMonitoring::m_binStagesIncr = 0 |
|
private |
◆ m_deltaDeltaEta
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaDeltaEta |
◆ m_deltaDeltaPhi
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaDeltaPhi |
◆ m_deltaEta
TH1D* FPGATrackSimGenScanMonitoring::m_deltaEta = 0 |
|
private |
◆ m_deltaEtaByLyr
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaEtaByLyr |
|
private |
◆ m_deltaEtaCurvature
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaEtaCurvature |
◆ m_deltaEtaDR
TH1D* FPGATrackSimGenScanMonitoring::m_deltaEtaDR = 0 |
|
private |
◆ m_deltaPhi
TH1D* FPGATrackSimGenScanMonitoring::m_deltaPhi = 0 |
|
private |
◆ m_deltaPhiByLyr
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaPhiByLyr |
|
private |
◆ m_deltaPhiCurvature
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_deltaPhiCurvature |
◆ m_deltaPhiDR
TH1D* FPGATrackSimGenScanMonitoring::m_deltaPhiDR = 0 |
|
private |
◆ m_detStore
◆ m_dir
Gaudi::Property<std::string> FPGATrackSimGenScanMonitoring::m_dir {this, "dir", {"/GENSCAN/"}, "String name of output directory"} |
|
private |
◆ m_etaCurvature
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaCurvature |
◆ m_etaCurvatureMax
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaCurvatureMax |
◆ m_etaInExtrap
TH1D* FPGATrackSimGenScanMonitoring::m_etaInExtrap = 0 |
|
private |
◆ m_etaOutExtrap
TH1D* FPGATrackSimGenScanMonitoring::m_etaOutExtrap = 0 |
|
private |
◆ m_etaResidual
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaResidual |
|
private |
◆ m_etaShift2D_road
TH2D* FPGATrackSimGenScanMonitoring::m_etaShift2D_road = 0 |
|
private |
◆ m_etaShift_road
TH1D* FPGATrackSimGenScanMonitoring::m_etaShift_road = 0 |
|
private |
◆ m_etaTrueBinShift
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_etaTrueBinShift |
|
private |
◆ m_evtStore
◆ m_filteredpairs
TH1D* FPGATrackSimGenScanMonitoring::m_filteredpairs = 0 |
|
private |
◆ m_hitLyrsAllBins
TH1D* FPGATrackSimGenScanMonitoring::m_hitLyrsAllBins = 0 |
|
private |
◆ m_hitsCntByLayer
std::vector<unsigned> FPGATrackSimGenScanMonitoring::m_hitsCntByLayer |
|
private |
◆ m_hitsLoadedPerLayer
TH1D* FPGATrackSimGenScanMonitoring::m_hitsLoadedPerLayer = 0 |
|
private |
◆ m_hitsPerLayer
TH1D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer = 0 |
|
private |
◆ m_hitsPerLayer2D
TH2D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer2D = 0 |
|
private |
◆ m_hitsPerLayer_road
TH2D* FPGATrackSimGenScanMonitoring::m_hitsPerLayer_road = 0 |
|
private |
◆ m_inputHits
TH1D* FPGATrackSimGenScanMonitoring::m_inputHits = 0 |
|
private |
◆ m_inputhitsperrow
◆ m_inputHitsPerRow
TH1D* FPGATrackSimGenScanMonitoring::m_inputHitsPerRow = 0 |
|
private |
◆ m_inputhitsperslice
◆ m_inputHitsPerSlice
TH1D* FPGATrackSimGenScanMonitoring::m_inputHitsPerSlice = 0 |
|
private |
◆ m_isSingleParticle
bool FPGATrackSimGenScanMonitoring::m_isSingleParticle = false |
|
private |
◆ m_lostPairFilterGraph
eventDispSet FPGATrackSimGenScanMonitoring::m_lostPairFilterGraph {std::string("lostpairfilter"), 10} |
|
private |
◆ m_lostPairSetFilterGraph
eventDispSet FPGATrackSimGenScanMonitoring::m_lostPairSetFilterGraph {std::string("lostpairsetfilter"), 10} |
|
private |
◆ m_nLayers
unsigned FPGATrackSimGenScanMonitoring::m_nLayers = 0 |
|
private |
◆ m_nminus1_idx
unsigned FPGATrackSimGenScanMonitoring::m_nminus1_idx = 6 |
|
private |
◆ m_outputHitsPerBin
TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerBin = 0 |
|
private |
◆ m_outputhitsperrow
◆ m_outputHitsPerRow
TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerRow = 0 |
|
private |
◆ m_outputhitsperslice
◆ m_outputHitsPerSlice
TH1D* FPGATrackSimGenScanMonitoring::m_outputHitsPerSlice = 0 |
|
private |
◆ m_outputroadsperrow
◆ m_outputRoadsPerRow
TH1D* FPGATrackSimGenScanMonitoring::m_outputRoadsPerRow = 0 |
|
private |
◆ m_pairinghits
TH1D* FPGATrackSimGenScanMonitoring::m_pairinghits = 0 |
|
private |
◆ m_pairMatchEta2D
TH2D* FPGATrackSimGenScanMonitoring::m_pairMatchEta2D = 0 |
|
private |
◆ m_pairMatchPhi2D
TH2D* FPGATrackSimGenScanMonitoring::m_pairMatchPhi2D = 0 |
|
private |
◆ m_pairs
TH1D* FPGATrackSimGenScanMonitoring::m_pairs = 0 |
|
private |
◆ m_pairSetMatchEta
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_pairSetMatchEta |
◆ m_pairSetMatchPhi
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_pairSetMatchPhi |
◆ m_pairsets
TH1D* FPGATrackSimGenScanMonitoring::m_pairsets = 0 |
|
private |
◆ m_pairsetsHits
TH2D* FPGATrackSimGenScanMonitoring::m_pairsetsHits = 0 |
|
private |
◆ m_pairsetsIncr
TH2D* FPGATrackSimGenScanMonitoring::m_pairsetsIncr = 0 |
|
private |
◆ m_passPairFilterGraph
eventDispSet FPGATrackSimGenScanMonitoring::m_passPairFilterGraph {std::string("passpairfilter"), 10} |
|
private |
◆ m_passPairSetFilterGraph
eventDispSet FPGATrackSimGenScanMonitoring::m_passPairSetFilterGraph {std::string("passpairsetfilter"), 10} |
|
private |
◆ m_phiCurvature
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiCurvature |
◆ m_phiCurvatureMax
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiCurvatureMax |
◆ m_phiInExtrap
TH1D* FPGATrackSimGenScanMonitoring::m_phiInExtrap = 0 |
|
private |
◆ m_phiInExtrapCurved
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiInExtrapCurved |
◆ m_phiInExtrapCurveLimit
TH1D* FPGATrackSimGenScanMonitoring::m_phiInExtrapCurveLimit =0 |
|
private |
◆ m_phiOutExtrap
TH1D* FPGATrackSimGenScanMonitoring::m_phiOutExtrap = 0 |
|
private |
◆ m_phiOutExtrapCurved
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurved |
◆ m_phiOutExtrapCurveLimit
TH1D* FPGATrackSimGenScanMonitoring::m_phiOutExtrapCurveLimit =0 |
|
private |
◆ m_phiResidual
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiResidual |
|
private |
◆ m_phiShift2D_road
TH2D* FPGATrackSimGenScanMonitoring::m_phiShift2D_road = 0 |
|
private |
◆ m_phiShift_road
TH1D* FPGATrackSimGenScanMonitoring::m_phiShift_road = 0 |
|
private |
◆ m_phiTrueBinShift
std::vector<TH1D *> FPGATrackSimGenScanMonitoring::m_phiTrueBinShift |
|
private |
◆ m_rin
double FPGATrackSimGenScanMonitoring::m_rin =0.0 |
|
private |
◆ m_roadFilterFlow
TH1D* FPGATrackSimGenScanMonitoring::m_roadFilterFlow = 0 |
|
private |
◆ m_roadGraph
eventDispSet FPGATrackSimGenScanMonitoring::m_roadGraph {std::string("road"), 10} |
|
private |
◆ m_rout
double FPGATrackSimGenScanMonitoring::m_rout =0.0 |
|
private |
◆ m_rZ_allhits
std::vector<TH2D *> FPGATrackSimGenScanMonitoring::m_rZ_allhits |
|
private |
◆ m_tHistSvc
ServiceHandle<ITHistSvc> FPGATrackSimGenScanMonitoring::m_tHistSvc {this, "THistSvc", "THistSvc"} |
|
private |
◆ m_totalInputIncr
TH2D* FPGATrackSimGenScanMonitoring::m_totalInputIncr = 0 |
|
private |
◆ m_truthbin
◆ m_truthIsValid
bool FPGATrackSimGenScanMonitoring::m_truthIsValid = false |
|
private |
◆ m_truthpars
◆ m_truthpars_hists
TH1D* FPGATrackSimGenScanMonitoring::m_truthpars_hists[5] = {0, 0, 0, 0, 0} |
|
private |
◆ m_truthparset
◆ m_truthtracks
◆ m_twoPairClasses
const std::vector<std::string> FPGATrackSimGenScanMonitoring::m_twoPairClasses |
|
inlinestaticprivate |
◆ m_unpairedHits
TH2D* FPGATrackSimGenScanMonitoring::m_unpairedHits = 0 |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
TH1D * m_truthpars_hists[5]
TH1D * m_phiInExtrapCurveLimit
std::vector< FPGATrackSimTruthTrack > const * m_truthtracks
char data[hepevt_bytes_allocation_ATLAS]
FPGATrackSimGenScanArray< int > m_inputhitsperrow
eventDispSet m_lostPairSetFilterGraph
std::vector< TH1D * > m_deltaEtaByLyr
TH1D * m_outputRoadsPerRow
Gaudi::Property< std::string > m_dir
TH1D * m_phiOutExtrapCurveLimit
std::vector< TH1D * > m_phiTrueBinShift
std::vector< TH1D * > m_phiCurvature
std::vector< TH1D * > m_etaResidual
StatusCode makeAndRegHist(HistType *&ptr, HistDef... histargs)
bool inRange(unsigned par, double val) const
eventDispSet m_lostPairFilterGraph
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
FPGATrackSimGenScanArray< int > m_outputroadsperrow
void allocateDataFlowCounters()
std::vector< TH1D * > m_pairSetMatchEta
TH1D * m_hitsLoadedPerLayer
void setBinPlotsActive(const FPGATrackSimGenScanBinningBase::IdxSet &idx)
virtual std::vector< unsigned > sliceAndScanIdx(const IdxSet &idx) const
StatusCode makeAndRegHistVector(std::vector< HistType * > &vec, unsigned len, const std::vector< std::string > *namevec, const char *namebase, HistDef... histargs)
unsigned getLayer() const
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
virtual const std::string & parNames(unsigned i) const =0
virtual double etaResidual(const ParSet &parset, FPGATrackSimHit const *hit, [[maybe_unused]] bool debug=false) const =0
std::vector< size_t > vec
#define ATH_MSG_VERBOSE(x)
std::vector< TH2D * > m_rZ_allhits
virtual double phiHistScale() const =0
std::vector< TH1D * > m_etaCurvature
virtual const ParSet trackParsToParSet(const FPGATrackSimTrackPars &pars) const =0
std::vector< TH1D * > m_phiInExtrapCurved
ServiceHandle< ITHistSvc > m_tHistSvc
virtual void setOwner(IDataHandleHolder *o)=0
const IdxSet m_invalidBin
FPGATrackSimGenScanBinningBase::IdxSet m_truthbin
FPGATrackSimGenScanArray< int > m_inputhitsperslice
virtual double etaHistScale() const =0
void addEvent(const std::vector< std::shared_ptr< const FPGATrackSimHit >> &hits)
static constexpr unsigned NPars
virtual std::vector< unsigned > sliceIdx(const IdxSet &idx) const
std::vector< TH1D * > m_deltaDeltaEta
virtual std::vector< unsigned > scanPars() const =0
virtual std::vector< unsigned > slicePars() const =0
eventDispSet m_allHitsGraph
std::vector< TH1D * > m_etaTrueBinShift
virtual double phiResidual(const ParSet &parset, FPGATrackSimHit const *hit, [[maybe_unused]] bool debug=false) const =0
std::vector< TH1D * > m_phiResidual
TH1D * m_inputHitsPerSlice
std::vector< unsigned > m_hitsCntByLayer
std::vector< TH1D * > m_pairSetMatchPhi
virtual std::vector< unsigned > sliceAndScanBins() const
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
TH1D * m_outputHitsPerRow
FPGATrackSimGenScanBinningBase::ParSet m_truthparset
bool isSingleParticle(const T &p)
Identify a particlegun particle.
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
TH1D * m_outputHitsPerBin
std::vector< TH1D * > m_phiOutExtrapCurved
FPGATrackSimTrackPars m_truthpars
std::string to_string(const DetectorType &type)
unsigned pairpairCategory(const FPGATrackSimGenScanTool::HitPair &pair, const FPGATrackSimGenScanTool::HitPair &lastpair) const
eventDispSet m_passPairFilterGraph
double etaShift(const IdxSet &idx, FPGATrackSimHit const *hit, bool debug=false) const
eventDispSet m_passPairSetFilterGraph
const IdxSet parsToBin(FPGATrackSimTrackPars &pars) const
std::vector< TH1D * > m_deltaPhiByLyr
std::vector< TH1D * > m_deltaEtaCurvature
virtual const FPGATrackSimTrackPars parSetToTrackPars(const ParSet &parset) const =0
const FPGATrackSimGenScanBinningBase * m_binning
FPGATrackSimGenScanArray< int > m_outputhitsperrow
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
FPGATrackSimGenScanArray< int > m_outputhitsperslice
static const std::vector< std::string > m_twoPairClasses
std::vector< TH1D * > m_deltaPhiCurvature
std::vector< TH1D * > m_deltaDeltaPhi
double phiShift(const IdxSet &idx, FPGATrackSimHit const *hit, bool debug=false) const
TH1D * m_outputHitsPerSlice
std::vector< ParSet > makeVariationSet(const std::vector< unsigned > &scanpars, const IdxSet &idx) const
virtual std::vector< unsigned > sliceBins() const
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
void setsize(const std::vector< unsigned int > &dims, const T &initval)
TH2D * m_hitsPerLayer_road
std::vector< unsigned > subVec(const std::vector< unsigned > &elems, const IdxSet &invec) const