 |
ATLAS Offline Software
|
Go to the documentation of this file.
14 #include "GaudiKernel/SystemOfUnits.h"
33 const std::string&
type,
34 const std::string&
name,
35 const IInterface*
parent ) :
101 const std::vector< std::string >& configuredChains =
m_trkAnaDefSvc->configuredChains();
105 for(
const std::string& thisChain : configuredChains ) {
106 ATH_MSG_DEBUG(
"Booking TrkAnalysis/histograms for chain : " << thisChain );
111 std::make_unique< IDTPM::TrackAnalysisPlotsMgr >(
117 return StatusCode::SUCCESS;
136 for (
size_t ih=0 ; ih<
hists.size() ; ih++ ) {
141 std::vector< EfficiencyData > effs =
m_trkAnaPlotsMgrVec[iAna]->retrieveBookedEfficiencies();
142 for (
size_t ie=0 ;
ie<effs.size() ;
ie++ ) {
148 return StatusCode::SUCCESS;
163 std::make_unique< xAOD::BaseContainer >(),
164 std::make_unique< xAOD::AuxContainerBase >() ) );
177 "\n==========================================" );
181 if( thisTrkAnaCollections.
empty() ) {
192 ATH_MSG_DEBUG(
"Some collections are empty after quality selection." );
216 not thisChain.empty() and thisChain !=
"Offline" ) {
218 unsigned decisionType = TrigDefs::Physics;
220 if( not
m_trigDecTool->isPassed( thisChain, decisionType ) ) {
221 ATH_MSG_DEBUG(
"Trigger chain " << thisChain <<
" is not fired. Skipping" );
229 std::vector< TrigCompositeUtils::LinkInfo< TrigRoiDescriptorCollection > > selectedRois;
230 size_t selectedRoisSize(1);
234 selectedRoisSize = selectedRois.size();
241 for(
size_t ir=0 ;
ir<selectedRoisSize ;
ir++ ) {
248 std::string thisRoiStr(
"Full Scan" );
250 thisRoiLink = selectedRois.at(
ir).link;
253 if( not thisRoiLink.
isValid() ) {
259 thisRoiStr = std::string( **thisRoiLink.
cptr() );
270 thisTrkAnaCollections, thisRoiLink ) );
274 thisTrkAnaCollections, thisRoiLink ) );
277 thisTrkAnaCollections.
copyFS();
282 ATH_MSG_DEBUG(
"Some collections are empty after RoI selection." );
288 std::string chainRoIName = thisChain;
296 chainRoIName, thisRoiStr ) );
309 thisTrkAnaCollections,
310 thisChain,
ir, thisRoiStr ) );
313 thisTrkAnaCollections.
newRoI();
323 return StatusCode::SUCCESS;
342 return StatusCode::SUCCESS;
367 return StatusCode::SUCCESS;
std::string printInfo(Stage stage=FULL, bool printVertex=true) const
print information about tracks in the collection(s)
StatusCode fillOfflVertexContainer(const SG::ReadHandleKey< xAOD::VertexContainer > &handleKey)
Offline vertices.
StatusCode fillTruthVertexContainer(const SG::ReadHandleKey< xAOD::TruthVertexContainer > &truthVertexHandleKey)
fill FULL vertex collections and vectors
uint64_t eventNumber() const
The current event's event number.
const xAOD::EventInfo * eventInfo()
get event info
const std::string & key() const
Return the StoreGate ID for the referenced object.
bool isValid() const
Test to see if the link can be dereferenced.
StatusCode fillTrigVertexContainer(const SG::ReadHandleKey< xAOD::VertexContainer > &handleKey)
Trigger vertices.
void clear(Stage stage=FULL)
Clear vectors.
StatusCode fillTruthPartContainer(const SG::ReadHandleKey< xAOD::TruthParticleContainer > &truthPartHandleKey)
fill FULL track collections and vectors
::StatusCode StatusCode
StatusCode definition for legacy code.
void newChain()
update before running on new chain
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
StatusCode fillEventInfo(const SG::ReadHandleKey< xAOD::EventInfo > &eventInfoHandleKey, const SG::ReadHandleKey< xAOD::TruthEventContainer > &truthEventHandleKey, const SG::ReadHandleKey< xAOD::TruthPileupEventContainer > &truthPUEventHandleKey)
— Setter methods —
std::string to_string(const DetectorType &type)
void newRoI()
update before running on new RoI
StatusCode initialize()
initialize
ElementConstPointer cptr() const
Return a pointer to the referenced element.
int ir
counter of the current depth
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
#define ATH_MSG_WARNING(x)
bool empty(Stage stage=FULL)
check if collection are empty
StatusCode fillTrigTrackContainer(const SG::ReadHandleKey< xAOD::TrackParticleContainer > &handleKey)
Trigger track particles.
void copyFS()
copy content of FS vectors to InRoI vectors
StatusCode fillOfflTrackContainer(const SG::ReadHandleKey< xAOD::TrackParticleContainer > &handleKey)
Offline track particles.