ATLAS Offline Software
Loading...
Searching...
No Matches
FillAlignTRTHits.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRT_CALIBTOOLS__FILLALIGNTRTHITS_H
6#define TRT_CALIBTOOLS__FILLALIGNTRTHITS_H
7/********************************************************************
8
9NAME: FillAlignTRTHits
10PACKAGE: TRT_AlignTOOLS
11
12AUTHORS: Jorgen Beck Hansen
13CREATED: December 2005
14
15PURPOSE: Tool to fill Hit info into the TRT::Hit messenger class
16
17********************************************************************/
18
19// INCLUDES:
20
21#include <string>
28#include "GaudiKernel/ToolHandle.h"
29#include "GaudiKernel/ServiceHandle.h"
31#include <TNtuple.h>
32#include <TFile.h>
34
35// Gaudi includes
36#include "Gaudi/Property.h"
37
38
39class AtlasDetectorID;
40class TRT_ID;
41
42namespace Trk {
43 class IPropagator;
44 class RIO_OnTrack;
45 class Track;
47 class ITruthToTrack;
49 }
50
51class FillAlignTRTHits : virtual public IFillAlignTrkInfo, public AthAlgTool {
52public:
53
54 FillAlignTRTHits(const std::string& type, const std::string& name, const IInterface* parent);
55
56 virtual ~FillAlignTRTHits() {}
57
58 virtual StatusCode initialize();
59 virtual StatusCode finalize();
60
61 //virtual bool fill(const Trk::Track* aTrack, TRT::TrackInfo* output) const;
62 virtual bool fill(const Trk::Track* aTrack, TRT::TrackInfo* output, const xAOD::EventInfo& eventInfo,
63 const xAOD::VertexContainer& vertices);
64
65private:
68
69 ToolHandle< ITRT_DriftFunctionTool > m_driftFunctionTool {this, "TRTDriftFunctionTool", "TRT_DriftFunctionTool", "Drift function tool name"};
70 ToolHandle<Trk::IUpdator> m_updator {this, "UpdatorTool" , "Trk::KalmanUpdator/TrkKalmanUpdator", "Measurement updator to calculate unbiased track states"};
71 ToolHandle<ITRT_CalDbTool> m_trtcaldbTool {this, "TRTCalDbTool", "CalDbTool", "Access to the folder of the calibration constants"};
72 ServiceHandle<ITRT_StrawNeighbourSvc> m_neighbourSvc {this, "NeighbourSvc", "NeighbourSvc", ""};
73 ToolHandle<ITRT_StrawStatusSummaryTool> m_TRTStrawSummaryTool {this, "TRTStrawSummaryTool", "InDetTRTStrawStatusSummaryTool", ""};
74
75 Gaudi::Property<std::string> m_ntupleName {this, "NtupleName" , "basic.root", "Changes the name of the ntuple Output"};
76
81 unsigned int m_numOfHitsTotal ;
82 unsigned int m_numOfHitsAccepted ;
85
86 TFile* m_f;
87 TNtuple* m_ntuple;
88};
89
90#endif // TRT_CALIBTOOLS__FILLALIGNTRTHITS_H
abstract interface to TRT calibration constants
Abstract interface to information on straws electronic grouping.
abstract interface to TRT straw status constants
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...
FillAlignTRTHits(const std::string &type, const std::string &name, const IInterface *parent)
virtual StatusCode finalize()
virtual bool fill(const Trk::Track *aTrack, TRT::TrackInfo *output, const xAOD::EventInfo &eventInfo, const xAOD::VertexContainer &vertices)
const TRT_ID * m_TRTID
unsigned int m_numOfHitsTotal
Gaudi::Property< std::string > m_ntupleName
unsigned int m_numOfProcessedTracks
ToolHandle< Trk::IUpdator > m_updator
virtual StatusCode initialize()
ServiceHandle< ITRT_StrawNeighbourSvc > m_neighbourSvc
const AtlasDetectorID * m_DetID
unsigned int m_numOfHitsAccepted
ToolHandle< ITRT_CalDbTool > m_trtcaldbTool
virtual ~FillAlignTRTHits()
ToolHandle< ITRT_StrawStatusSummaryTool > m_TRTStrawSummaryTool
ToolHandle< ITRT_DriftFunctionTool > m_driftFunctionTool
This is an Identifier helper class for the TRT subdetector.
Definition TRT_ID.h:82
Interface class IPropagators It inherits from IAlgTool.
Definition IPropagator.h:55
provides the interface for tools which calculate residuals and pulls.
ITruthToTrack is an interface to create Trk::TrackParameters from a HepMC::GenParticle.
Class to handle RIO On Tracks ROT) for InDet and Muons, it inherits from the common MeasurementBase.
Definition RIO_OnTrack.h:70
represents the track state (measurement, material, fit parameters and quality) at a surface.
Ensure that the ATLAS eigen extensions are properly loaded.
EventInfo_v1 EventInfo
Definition of the latest event info version.
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".