49 m_effSiSPSeededFinderPlots = std::make_unique<InDetPerfPlot_Efficiency>(
this,
"TracksByAuthor/SiSPSeededFinder/Tracks/Efficiency");
52 m_effTRTStandalonePlots = std::make_unique<InDetPerfPlot_Efficiency>(
this,
"TracksByAuthor/TRTStandalone/Tracks/Efficiency");
60 m_fakeTRTStandalonePlots = std::make_unique<InDetPerfPlot_FakeRate>(
this,
"TracksByAuthor/TRTStandalone/Tracks/FakeRate");
68 m_trkParaTRTStandalonePlots = std::make_unique<InDetPerfPlot_TrackParameters>(
this,
"TracksByAuthor/TRTStandalone/Tracks/Parameters");
73 m_resSiSPSeededFinderPlots = std::make_unique<InDetPerfPlot_Resolution>(
this,
"TracksByAuthor/SiSPSeededFinder/Tracks/Resolution");
76 m_resTRTStandalonePlots = std::make_unique<InDetPerfPlot_Resolution>(
this,
"TracksByAuthor/TRTStandalone/Tracks/Resolution");
116 std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo =
particle.patternRecoInfo();
155 std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo =
particle.patternRecoInfo();
157 bool isSiSpSeededFinder = patternInfo.test(0);
158 bool isInDetExtensionProcessor = patternInfo.test(3);
159 bool isTRTSeededTrackFinder = patternInfo.test(4);
160 bool isTRTStandalone = patternInfo.test(20);
161 bool isSiSpacePointsSeedMaker_LargeD0 = patternInfo.test(49);
184 const unsigned int ntracksPt1GeV,
const unsigned int truthMu,
185 const float actualMu,
const unsigned int nvertices,
208 const bool isGood,
const unsigned int truthMu,
const float actualMu,
float weight) {
213 bool isGoodSiSPSeededFinder =
false;
214 bool isGoodInDetExtensionProcessor =
false;
215 bool isGoodTRTSeededTrackFinder =
false;
216 bool isGoodTRTStandalone =
false;
217 bool isGoodSiSpacePointsSeedMaker_LargeD0 =
false;
220 std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo =
track->patternRecoInfo();
222 bool isSiSpSeededFinder = patternInfo.test(0);
223 bool isInDetExtensionProcessor = patternInfo.test(3);
224 bool isTRTSeededTrackFinder = patternInfo.test(4);
225 bool isTRTStandalone = patternInfo.test(20);
226 bool isSiSpacePointsSeedMaker_LargeD0 = patternInfo.test(49);
228 isGoodSiSPSeededFinder = isSiSpSeededFinder and not isInDetExtensionProcessor;
229 isGoodInDetExtensionProcessor = isInDetExtensionProcessor and
230 not (isTRTSeededTrackFinder or isSiSpacePointsSeedMaker_LargeD0);
231 isGoodTRTSeededTrackFinder = isTRTSeededTrackFinder and not isTRTStandalone;
232 isGoodTRTStandalone = isTRTStandalone;
233 isGoodSiSpacePointsSeedMaker_LargeD0 = isSiSpacePointsSeedMaker_LargeD0;
238 truthMu, actualMu,
weight);
240 truthMu, actualMu,
weight);
242 truthMu, actualMu,
weight);
245 truthMu, actualMu,
weight);
252 const unsigned int truthMu,
const float actualMu,
float weight) {
261 const std::vector<const xAOD::TrackParticle*>& tracks,
float weight) {
275 if(isAssociatedTruth) {
279 std::bitset<xAOD::TrackPatternRecoInfo::NumberOfTrackRecoInfo> patternInfo =
track.patternRecoInfo();
281 bool isSiSpSeededFinder = patternInfo.test(0);
282 bool isInDetExtensionProcessor = patternInfo.test(3);
283 bool isTRTSeededTrackFinder = patternInfo.test(4);
284 bool isTRTStandalone = patternInfo.test(20);
285 bool isSiSpacePointsSeedMaker_LargeD0 = patternInfo.test(49);
309 for (
const auto& vtx : vertexContainer.
stdcont()) {
311 ATH_MSG_DEBUG(
"IN InDetRttPlots::fill, found xAOD::VxType::NoVtx");
315 ATH_MSG_DEBUG(
"IN InDetRttPlots::fill, filling for all vertices");
318 if (recoHardScatter) {
324 ATH_MSG_DEBUG(
"IN InDetRttPlots::fill, filling for all HS vertex");
352 else if (isUnlinked){