ATLAS Offline Software
AlignTrackDresser.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 TRKALIGNGENDRESSERS_ALIGN_TRACK_DRESSER_H
6 #define TRKALIGNGENDRESSERS_ALIGN_TRACK_DRESSER_H
7 
9 #include "GaudiKernel/ToolHandle.h"
10 
13 
26 namespace CLHEP {
27  class HepSymMatrix;
28 }
29 
30 namespace Trk {
31  class AlignTrack;
32 
33  class AlignTrackDresser : virtual public IAlignTrackDresser, public AthAlgTool {
34 
35  public:
36  AlignTrackDresser(const std::string & type, const std::string & name, const IInterface * parent);
37 
38  virtual StatusCode initialize() override;
39  virtual StatusCode finalize() override;
40 
42  virtual bool dressAlignTrack(AlignTrack * alignTrack) override;
43 
45  void setResiduals(AlignTrack * alignTrack) const;
46 
48  virtual void setLogStream(std::ostream * os) override;
49 
50  private:
51 
52  // private variables
53  ToolHandle <IDerivCalcTool> m_derivCalcTool{
54  this, "DerivCalcTool", "Trk::AnalyticalDerivCalcTool",
55  "tool for calculating derivatives of residuals wrt. alignment parameters"};
56 
57  unsigned int m_numBadCovWMatrix = 0;
58 
59  }; // end class
60 
61 } // end namespace
62 
63 #endif // TRKALIGNGENDRESSERS_ALIGN_TRACK_DRESSER_H
IAlignTrackDresser.h
Trk::AlignTrackDresser::AlignTrackDresser
AlignTrackDresser(const std::string &type, const std::string &name, const IInterface *parent)
Definition: AlignTrackDresser.cxx:25
Trk::AlignTrackDresser::initialize
virtual StatusCode initialize() override
Definition: AlignTrackDresser.cxx:32
Trk::AlignTrackDresser::setResiduals
void setResiduals(AlignTrack *alignTrack) const
sets residuals for TSOS on alignTrack
Definition: AlignTrackDresser.cxx:86
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
Trk::AlignTrackDresser
Definition: AlignTrackDresser.h:33
Trk::AlignTrackDresser::m_derivCalcTool
ToolHandle< IDerivCalcTool > m_derivCalcTool
Definition: AlignTrackDresser.h:53
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CLHEP
STD'S.
Definition: CaloNoiseCompCondAlg.h:58
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
Trk::IAlignTrackDresser
Definition: IAlignTrackDresser.h:30
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
Trk::AlignTrackDresser::setLogStream
virtual void setLogStream(std::ostream *os) override
sets the output stream for the logfile
Definition: AlignTrackDresser.cxx:47
Trk::AlignTrack
Definition: AlignTrack.h:41
Trk::AlignTrackDresser::m_numBadCovWMatrix
unsigned int m_numBadCovWMatrix
number of tracks with invalid weight matrix from the deriv.calc.tool
Definition: AlignTrackDresser.h:57
Trk::AlignTrackDresser::finalize
virtual StatusCode finalize() override
Definition: AlignTrackDresser.cxx:54
AthAlgTool
Definition: AthAlgTool.h:26
IDerivCalcTool.h
Trk::AlignTrackDresser::dressAlignTrack
virtual bool dressAlignTrack(AlignTrack *alignTrack) override
dresses alignTrack with derivatives and other information
Definition: AlignTrackDresser.cxx:62
AlignTrack
AlignTrack is a generalization of a Trk::Track, used as the basic object to contain track information...