5#ifndef TRKALIGNGENALGS_ALIGNALG_H
6#define TRKALIGNGENALGS_ALIGNALG_H
8#include "GaudiKernel/ToolHandle.h"
54 virtual StatusCode
start();
60 virtual StatusCode
stop();
71 this,
"TrackCollectionProvider",
"Trk::TrackCollectionProvider",
72 "tool for getting track collection from StoreGate"};
76 this,
"AlignTrackPreProcessor",
"Trk::AlignTrackPreProcessor",
77 "tool for converting Trk::Track to AlignTrack after processing if necessary"};
81 this,
"AlignTrackCreator",
"Trk::AlignTrackCreator",
82 "tool for creating AlignTSOSCollection to store on AlignTrack"};
86 this,
"AlignTrackDresser",
"Trk::AlignTrackDresser",
87 "tool for dressing AlignTrack with residuals, derivatives, etc."};
91 this,
"AlignTool",
"Trk::GlobalChi2AlignTool",
92 "alignment algorithm-specific tool"};
96 this,
"GeometryManagerTool",
"InDet::InDetGeometryManagerTool",
97 "tool for configuring geometry"};
101 this,
"AlignDBTool",
"Trk::TrkAlignDBTool",
"tool for handling DB stuff"};
105 this,
"FillNtupleTool",
"",
106 "tool for storing Trk::Track information into the ntuple"};
109 StringProperty
m_filename{
this,
"FileName",
"Align.root",
"name of ntuple file"};
110 StringProperty
m_filepath{
this,
"FilePath",
"./",
"path to ntuple file"};
113 "only do the solving (accumulate from binaries)"};
115 "write track and event information to ntuple"};
118 "Set the Alignment Solve Level"};
122 "write a logfile for solving"};
124 "name of the logfile"};
135 "name of the AlignTrack collection in the StoreGate"};
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
virtual StatusCode finalize()
finalize method
StringProperty m_filename
std::ostream * m_logStream
logfile output stream
virtual StatusCode initialize()
initialize method
virtual StatusCode start()
set up geometry and prepare the tools
virtual StatusCode stop()
processes information accumulated in execute method to determine alignment parameters
BooleanProperty m_writeLogfile
StringProperty m_filepath
ToolHandle< ITrackCollectionProvider > m_trackCollectionProvider
StringProperty m_alignTracksName
int m_ntracksProc
number of tracks successfully processed
ToolHandle< IAlignTool > m_alignTool
Pointer to alignTool.
virtual ~AlignAlg()
destructor
int m_ntracksAccum
number of tracks successfully accumulated
int m_nevents
number of processed events
virtual StatusCode execute()
loops over tracks in event, and accumulates information necessary for alignmnet
int m_ntracksSel
number of selected tracks
BooleanProperty m_writeNtuple
int m_ntracks
number of processed tracks
void showStatistics()
dumps statistics accumulated in each event
StringProperty m_logfileName
ToolHandle< IAlignTrackPreProcessor > m_alignTrackPreProcessor
Pointer to AlignTrackPreProcessor, used to select hits on tracks and/or tracks before passing to Alig...
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor
BooleanProperty m_solveOnly
PublicToolHandle< IGeometryManagerTool > m_geometryManagerTool
Pointer to GeometryManagerTool, used to get lists of chambers for which alignment parameters will be ...
ToolHandle< IAlignTrackDresser > m_alignTrackDresser
Pointer to alignTrackDresser, used to add residuals, derivatives, etc.
ToolHandle< IFillNtupleTool > m_fillNtupleTool
Pointer to FillNtupleTool, used to write track information to ntuple.
int m_ntracksDress
number of tracks successfully dressed
TFile * m_ntuple
output ntuple
ToolHandle< ITrkAlignDBTool > m_trkAlignDBTool
Pointer to TrkAlignDBTool, used for reading/writing alignment parameters from/to the database.
ToolHandle< IAlignTrackCreator > m_alignTrackCreator
Pointer to alignTrackCreator, used to convert Trk::Track to vector of AlignTrack.
IntegerProperty m_alignSolveLevel
Ensure that the ATLAS eigen extensions are properly loaded.