ATLAS Offline Software
AlignTrackCreator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRKALIGNGENTOOLS_ALIGN_TRACK_CREATOR_H
6 #define TRKALIGNGENTOOLS_ALIGN_TRACK_CREATOR_H
7 
8 #include "GaudiKernel/ToolHandle.h"
10 
14 
15 #include <vector>
16 
27 class AtlasDetectorID;
28 
29 namespace Trk {
30 
31  class AlignTrack;
32  class AlignTSOS;
33  class MeasurementTypeID;
34 
35  class AlignTrackCreator : virtual public IAlignTrackCreator, public AthAlgTool {
36 
37  public:
38  AlignTrackCreator(const std::string& type, const std::string& name,
39  const IInterface* parent);
40 
43 
46 
47  private:
48 
49  // private variables
50  PublicToolHandle<IAlignModuleTool> m_alignModuleTool{this, "AlignModuleTool", "InDet::InDetAlignModuleTool/InDetAlignModuleTool"};
51  ToolHandle<IAlignResidualCalculator> m_residualCalculator{
52  this, "ResidualCalculator", "Trk::AlignResidualCalculator/ResidualCalculator"};
53 
54  const AtlasDetectorID* m_idHelper = nullptr;
56 
57  std::vector< std::pair<int,int> > m_goodEventList;
58 
59  StringProperty m_eventListName{this, "EventList", "goodEvents.txt",
60  "name of event list ASCII file"};
61  BooleanProperty m_writeEventList{this, "WriteEventList", false,
62  "write selected events to event list ASCII file"};
63  BooleanProperty m_requireOverlap{this, "RequireOverlap", false,
64  "keep only tracks that pass through 2 or more AlignModules"};
66  this, "RemoveATSOSNotInAlignModule", true,
67  "remove AlignTSOS not in AlignModules"};
68  BooleanProperty m_includeScatterers{this, "IncludeScatterers", true,
69  "includes scatterers on track"};
70 
71  }; // end class
72 
73 } // end namespace
74 
75 #endif // TRKALIGNGENTOOLS_ALIGN_TRACK_CREATOR_H
Trk::AlignTrackCreator::finalize
StatusCode finalize()
Definition: AlignTrackCreator.cxx:69
Trk::AlignTrackCreator::initialize
StatusCode initialize()
Definition: AlignTrackCreator.cxx:41
Trk::AlignTrackCreator::AlignTrackCreator
AlignTrackCreator(const std::string &type, const std::string &name, const IInterface *parent)
Definition: AlignTrackCreator.cxx:32
IAlignResidualCalculator.h
IAlignTrackCreator.h
Trk::AlignTrackCreator::m_writeEventList
BooleanProperty m_writeEventList
Definition: AlignTrackCreator.h:61
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
Trk::AlignTrackCreator::m_idHelper
const AtlasDetectorID * m_idHelper
Definition: AlignTrackCreator.h:54
Trk::AlignTrackCreator::processAlignTrack
bool processAlignTrack(AlignTrack *track)
creates AlignTrack containing all TSOS on track
Definition: AlignTrackCreator.cxx:94
Trk::AlignTrackCreator::m_includeScatterers
BooleanProperty m_includeScatterers
Definition: AlignTrackCreator.h:68
AlignTSOS
AlignTSOS is a TSOS with extra variables useful for alignment. It is created using an implementation ...
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
Trk::AlignTrackCreator::m_alignModuleTool
PublicToolHandle< IAlignModuleTool > m_alignModuleTool
Definition: AlignTrackCreator.h:50
Trk::AlignTrackCreator::m_goodEventList
std::vector< std::pair< int, int > > m_goodEventList
Definition: AlignTrackCreator.h:57
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::AlignTrackCreator::m_residualCalculator
ToolHandle< IAlignResidualCalculator > m_residualCalculator
Definition: AlignTrackCreator.h:51
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
Trk::MeasurementTypeID
classifies a MeasurementBase into one of the known inherited flavours or one of the detector types fo...
Definition: MeasurementTypeID.h:26
Trk::AlignTrackCreator::m_measTypeIdHelper
MeasurementTypeID * m_measTypeIdHelper
Definition: AlignTrackCreator.h:55
Trk::AlignTrack
Definition: AlignTrack.h:41
Trk::IAlignTrackCreator
Definition: IAlignTrackCreator.h:30
Trk::AlignTrackCreator
Definition: AlignTrackCreator.h:35
IAlignModuleTool.h
Trk::AlignTrackCreator::m_removeATSOSNotInAlignModule
BooleanProperty m_removeATSOSNotInAlignModule
Definition: AlignTrackCreator.h:65
xAOD::track
@ track
Definition: TrackingPrimitives.h:513
AthAlgTool
Definition: AthAlgTool.h:26
Trk::AlignTrackCreator::m_requireOverlap
BooleanProperty m_requireOverlap
Definition: AlignTrackCreator.h:63
Trk::AlignTrackCreator::m_eventListName
StringProperty m_eventListName
good events read in from ASCII file
Definition: AlignTrackCreator.h:59
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57
AlignTrack
AlignTrack is a generalization of a Trk::Track, used as the basic object to contain track information...