5#ifndef TRTMONITORINGRUN3RAW_ALG_H
6#define TRTMONITORINGRUN3RAW_ALG_H
11#include "GaudiKernel/StatusCode.h"
33#include "CLHEP/Units/SystemOfUnits.h"
55 virtual StatusCode
fillHistograms(
const EventContext& ctx )
const override;
62 std::vector<std::vector<unsigned char>>
m_mat_chip_E{64, std::vector<unsigned char>(3840)};
63 std::vector<std::vector<unsigned char>>
m_mat_chip_B{64, std::vector<unsigned char>(1642)};
65 static const int s_Straw_max[2];
66 static const int s_iChip_max[2];
73 BooleanProperty
m_doChips{
this,
"doChips",
true,
""};
76 BooleanProperty
m_doShift{
this,
"doShift",
true,
""};
87 Gaudi::Property<std::vector<int>>
m_strawMax {
this,
"strawMax", {-1, -1}};
88 Gaudi::Property<std::vector<int>>
m_iChipMax {
this,
"iChipMax", {-1, -1}};
96 FloatProperty
m_max_abs_d0{
this,
"max_abs_d0", 10 * CLHEP::mm,
""};
97 FloatProperty
m_max_abs_z0{
this,
"max_abs_z0", 300 * CLHEP::mm,
""};
99 FloatProperty
m_minP{
this,
"MinTrackP", 0.0 * CLHEP::GeV,
""};
100 FloatProperty
m_min_pT{
this,
"min_pT", 0.5 * CLHEP::GeV,
""};
102 StatusCode fillTRTRDOs(
const EventContext& ctx,
106 StatusCode fillTRTEfficiency(
const EventContext& ctx,
108 StatusCode fillTRTHits(
const EventContext& ctx,
111 int chipToBoard(
int chip)
const;
112 int chipToBoard_EndCap(
int chip)
const;
113 StatusCode checkTRTReadoutIntegrity(
const xAOD::EventInfo& eventInfo)
const;
114 std::vector<std::vector<std::vector<int>>> initScaleVectors(
const EventContext& ctx)
const;
116 int strawNumberEndCap(
int strawNumber,
int strawLayerNumber,
int LayerNumber,
int phi_stack,
int side)
const;
117 int strawNumber(
int strawNumber,
int strawlayerNumber,
int LayerNumber)
const;
118 int strawLayerNumber(
int strawLayerNumber,
int LayerNumber)
const;
119 float radToDegrees(
float radValue)
const;
120 int strawNumber_reverse(
int inp_strawnumber,
int* strawNumber,
int* strawlayerNumber,
int* LayerNumber)
const;
121 int strawLayerNumber_reverse(
int strawLayerNumInp,
int* strawLayerNumber,
int* LayerNumber)
const;
124 ToolHandle<ITRT_StrawStatusSummaryTool>
m_sumTool{
this,
"InDetTRTStrawStatusSummaryTool",
"TRT_StrawStatusSummaryTool",
""};
127 ToolHandle<InDet::IInDetTrackSelectionTool>
m_trackSelTool{
this,
"TrackSelectionTool",
"InDet::InDetTrackSelectionTool/TrackSelectionTool",
""};
138 ToolHandle<Trk::ITrackHoleSearchTool>
m_trt_hole_finder{
this,
"trt_hole_search",
"TRTTrackHoleSearchTool",
"Track hole search tool name"};
139 ToolHandle<Trk::ITrackSummaryTool>
m_TrackSummaryTool{
this,
"TrackSummaryTool",
"InDetTrackSummaryTool",
"Track summary tool name"};
149 if ( stat==2 || stat==3 ) { Gas =
Xe; }
150 else if ( stat==1 || stat==4 ) { Gas =
Ar; }
151 else if ( stat==5 ) { Gas =
Kr; }
152 else if ( stat==6 ) { Gas =
Xe; }
153 else if ( stat==7 ) { Gas =
Xe; }
154 else {
ATH_MSG_FATAL (
"getStatusHT = " << stat <<
", must be 'Good(2)||Xenon(3)' or 'Dead(1)||Argon(4)' or 'Krypton(5)!' or 6 or 7 for emulated types!");
155 throw std::exception();
Service for accessing TRT ByteStream conditions information.
Abstract interface to information on straws electronic grouping.
std::vector< std::pair< uint32_t, unsigned int > > InDetTimeCollection
Header file to be included by clients of the Monitored infrastructure.
Property holding a SG store/key/clid from which a ReadHandle is made.
Handle class for reading from StoreGate.
InDetRawDataContainer< InDetRawDataCollection< TRT_RDORawData > > TRT_RDO_Container
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
The Detector Manager for all TRT Detector elements, it acts as the interface to the detector elements...
Property holding a SG store/key/clid from which a ReadHandle is made.
GasType Straw_Gastype(int stat) const
BooleanProperty m_doRDOsMon
const AtlasDetectorID * m_idHelper
BooleanProperty m_useHoleFinder
BooleanProperty m_doStraws
ToolHandle< ITRT_StrawStatusSummaryTool > m_sumTool
SG::ReadHandleKey< TRT_RDO_Container > m_rdoContainerKey
static const int s_numberOfEndCapStacks
SG::ReadHandleKey< TRT_BSErrContainer > m_bsErrContKey
IntegerProperty m_min_pixel_hits
IntegerProperty m_EventBurstCut
FloatProperty m_max_abs_z0
BooleanProperty m_doChips
SG::ReadHandleKey< InDetTimeCollection > m_TRT_BCIDCollectionKey
IntegerProperty m_min_si_hits
BooleanProperty m_doTracksMon
BooleanProperty m_doExpert
const InDetDD::TRT_DetectorManager * m_mgr
BooleanProperty m_isCosmics
Gaudi::Property< std::vector< int > > m_iChipMax
Gaudi::Property< std::vector< int > > m_strawMax
IntegerProperty m_every_xth_track
ToolHandle< Trk::ITrackHoleSearchTool > m_trt_hole_finder
SG::ReadHandleKey< TrackCollection > m_combTrackCollectionKey
std::vector< std::vector< unsigned char > > m_mat_chip_B
std::vector< std::vector< unsigned char > > m_mat_chip_E
IntegerProperty m_min_sct_hits
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
static const int s_numberOfBarrelStacks
ToolHandle< InDet::IInDetTrackSelectionTool > m_trackSelTool
FloatProperty m_max_abs_d0
BooleanProperty m_doHitsMon
FloatProperty m_longToTCut
IntegerProperty m_min_trt_hits
SG::ReadHandleKey< TrackCollection > m_trackCollectionKey
ToolHandle< Trk::ITrackSummaryTool > m_TrackSummaryTool
BooleanProperty m_doShift
const TRT_ID * m_pTRTHelper
ServiceHandle< ITRT_StrawNeighbourSvc > m_TRTStrawNeighbourSvc
BooleanProperty m_doMaskStraws
IntegerProperty m_minTRThits
FloatProperty m_usedEvents
BooleanProperty m_ArgonXenonSplitter
FloatProperty m_DistToStraw
FloatProperty m_max_abs_eta
ServiceHandle< ITRT_ByteStream_ConditionsSvc > m_BSSvc
This is an Identifier helper class for the TRT subdetector.
EventInfo_v1 EventInfo
Definition of the latest event info version.