ATLAS Offline Software
Loading...
Searching...
No Matches
SiTrkAlignDBTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef INDETALIGNDBTOOLS_SITRKALIGNDBTOOL_H
6#define INDETALIGNDBTOOLS_SITRKALIGNDBTOOL_H
7
10
12
23
24class TFile;
25
26class PixelID;
27class SCT_ID;
28class AtlasDetectorID;
29
30class Identifier;
31
33
34namespace Trk
35{
36 class AlignModule;
37 class IAlignModuleTool;
39}
40
41namespace InDet
42{
43
44 class SiTrkAlignDBTool : virtual public Trk::ITrkAlignDBTool, public AthAlgTool {
45
46 public:
47
49 SiTrkAlignDBTool(const std::string & type, const std::string & name, const IInterface * parent);
50
52 virtual ~SiTrkAlignDBTool();
53
55 virtual StatusCode initialize();
56
58 virtual StatusCode finalize();
59
61 void writeAlignPar();
62
64 void setNtuple(TFile * file)
65 { m_ntuple=file; }
66
67
68 private:
69
71 void updateDB();
72
73 bool checkPixelLevel();
74 bool checkSCTLevel();
75 bool checkSiLevel();
76
77 void updateSiL0asL1(Identifier idL0, const Amg::Transform3D & transform);
78
79 void updateAsL3(const Trk::AlignModule * module, const Amg::Transform3D & transform, double);
80
81 void printTransform(const Amg::Transform3D & tr) const;
82
83 void updateAsL2(const Trk::AlignModule * module, const Amg::Transform3D & transform, const int);
84
85 void updateAsL16(const Trk::AlignModule * module, double);
86
87 virtual Identifier GetL1L2fromL3Identifier( const Identifier& ident , const int& level) const ;
88
92
94 std::string m_SQLiteTag;
95 std::string m_outputAlignFile;
96 std::string m_outIBLDistFile;
100 std::string m_oldIBLDistFile;
101 std::string m_oldAlignFile;
104
105 ToolHandle<IInDetAlignDBTool> m_IDAlignDBTool;
106 ToolHandle<Trk::IAlignModuleTool> m_alignModuleTool;
107
108 ToolHandle<Trk::IGeometryManagerTool> m_pixelGeoManager;
109 ToolHandle<Trk::IGeometryManagerTool> m_sctGeoManager;
110 ToolHandle<Trk::IGeometryManagerTool> m_siGeoManager;
111
112 TFile * m_ntuple;
113
118
122
124
125 bool m_doSi;
128
132
133 }; // end class
134
135} // end namespace
136
137#endif // INDETALIGNDBTOOLS_SITRKALIGNDBTOOL_H
AlignModule is a grouping of TrkDetElementBase objects, grouped according to the type of alignment,...
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Interface for tool used to build the AlignModules to be used for alignment.
const PixelID * m_pixHelper
pointer to PIX detector manager
std::string m_oldGlobalFolderFile
filename for the textfile with initial GlobalFolder constants
ToolHandle< Trk::IGeometryManagerTool > m_pixelGeoManager
ToolHandle< Trk::IAlignModuleTool > m_alignModuleTool
void updateAsL16(const Trk::AlignModule *module, double)
ToolHandle< Trk::IGeometryManagerTool > m_sctGeoManager
void setNtuple(TFile *file)
sets ntuple to be used to write output
std::string m_outGlobalFolderFile
filename for the textfile with final GlobalFolder constants
virtual ~SiTrkAlignDBTool()
destructor
std::string m_outIBLDistFile
filename for the textfile with final IBLDist params
std::string m_SQLiteTag
tag name for the ConditionsDB
const AtlasDetectorID * m_idHelper
bool m_writeTextFile
flag whether to write out the final constants into text file
virtual StatusCode initialize()
initialize method
bool m_writeSQLFile
flag wether to write out .db file or not (file is not needed in parallel jobs)
void printTransform(const Amg::Transform3D &tr) const
virtual Identifier GetL1L2fromL3Identifier(const Identifier &ident, const int &level) const
convert L3 module identifier to L1 or L2
void updateDB()
updates alignment constants in the DB
const SCT_ID * m_sctHelper
pointer to SCT detector manager
bool m_updateConstants
flag whether to update the constants
void updateAsL3(const Trk::AlignModule *module, const Amg::Transform3D &transform, double)
ToolHandle< IInDetAlignDBTool > m_IDAlignDBTool
void updateAsL2(const Trk::AlignModule *module, const Amg::Transform3D &transform, const int)
virtual StatusCode finalize()
finalize method
ToolHandle< Trk::IGeometryManagerTool > m_siGeoManager
bool m_writeOldConstants
flag whether to write out the initial constants into text file
void writeAlignPar()
Writes alignment parameters.
std::string m_oldIBLDistFile
filename for the textfile with initial IBLDist params
void updateSiL0asL1(Identifier idL0, const Amg::Transform3D &transform)
std::string m_outputAlignFile
filename for the textfile with final alignment constants
std::string m_oldAlignFile
filename for the textfile with initial alignment constants
SiTrkAlignDBTool(const std::string &type, const std::string &name, const IInterface *parent)
constructor
This is an Identifier helper class for the Pixel subdetector.
Definition PixelID.h:67
This is an Identifier helper class for the SCT subdetector.
Definition SCT_ID.h:68
Eigen::Affine3d Transform3D
Primary Vertex Finder.
Ensure that the ATLAS eigen extensions are properly loaded.
TFile * file