ATLAS Offline Software
Loading...
Searching...
No Matches
TileHitToTTL1.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5//****************************************************************************
6// Filename : TileHitToTTL1.h
7// Author : F. Merritt, UC-ATLAS TileCal group
8// Created : Feb 2003
9//
10// DESCRIPTION
11//
12// Creates TileTTL1 Digits from TileHit
13//
14// Properties (JobOption Parameters):
15//
16// TileHitContainer string Name of container with TileHit to read
17// TileTTL1Container string Name of container with TileTTL1Digits to write
18// TileInfoName string Name of object in TDS with all parameters
19//
20// BUGS:
21//
22// History:
23//
24//
25//****************************************************************************
26
27#ifndef TILESIMALGS_TILEHITTOTTL1_H
28#define TILESIMALGS_TILEHITTOTTL1_H
29
30// Tile includes
37
38// Atlas includes
43
44// Gaudi includes
45#include "GaudiKernel/ToolHandle.h"
46#include "GaudiKernel/ServiceHandle.h"
47
48#include <string>
49
50class IAthRNGSvc;
51class TileID;
52class TileTBID;
53class TileHWID;
54class TileInfo;
55class CaloLVL1_ID;
57
73 public:
74
75 using AthReentrantAlgorithm::AthReentrantAlgorithm;
76 virtual ~TileHitToTTL1() = default;
77
78 virtual StatusCode initialize() override;
79 virtual StatusCode execute(const EventContext &ctx) const override;
80 virtual StatusCode finalize() override;
81
82 private:
83
84 Gaudi::Property<bool> m_maskBadChannels{this,
85 "maskBadChannels", true, "If true then bad channels are masked"};
86
87 Gaudi::Property<std::string> m_infoName{this,
88 "TileInfoName", "TileInfo", "TileInfo object name"};
89
90 Gaudi::Property<std::string> m_TileTTL1Type{this,
91 "TileTTL1Type", "Standard", "Name of Trigger Type"};
92
93 SG::ReadHandleKey<TileHitContainer> m_hitContainerKey{this,"TileHitContainer","TileHitCnt",
94 "input Tile hit container key"};
95
97 "TileTTL1Cnt",
98 "Output Tile TTL1 container key"};
99
101 "TileTTL1MBTS",
102 "Output Tile MBTS TTL1 container key"};
103
108 "TileSamplingFraction", "TileSamplingFraction", "Input Tile sampling fraction"};
109
110 bool m_cosmicsType{false};
111
112 const TileID* m_tileID{nullptr};
113 const TileTBID* m_tileTBID{nullptr};
114 const TileHWID* m_tileHWID{nullptr};
115 const TileInfo* m_tileInfo{nullptr};
116 const CaloLVL1_ID* m_TT_ID{nullptr};
118
119
120 // Variables for the trigger towers
121 int m_nSamples{0};
122 int m_iTrig{0};
123
124 // Variables for the MBTS
126 int m_MBTSiTrig{0};
127
128 int m_lastTower{15};
129
130 bool m_tileNoise{false};
131 bool m_tileThresh{false};
132
137 "TileCablingSvc", "TileCablingSvc", "The Tile cabling service"};
138
139 ServiceHandle<IAthRNGSvc> m_rndmSvc{this, "RndmSvc", "AthRNGSvc", ""};
141 Gaudi::Property<std::string> m_randomStreamName{this, "RandomStreamName", "Tile_HitToTTL1", ""};
142
147 "TileEMScale", "TileEMScale", "Input Tile EMS calibration constants"};
148
153 "TileBadChannels", "TileBadChannels", "Input Tile bad channel status"};
154
155};
156
157#endif // TILESIMALGS_TILEHITTOTTL1_H
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
Helper class for offline TT identifiers.
Definition CaloLVL1_ID.h:66
manage multiple RandomEngines in thread-safe way.
Definition IAthRNGSvc.h:28
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Helper class for TileCal online (hardware) identifiers.
Definition TileHWID.h:49
This algorithm builds TileTTL1 objects from TileHits.
Gaudi::Property< bool > m_maskBadChannels
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
ServiceHandle< IAthRNGSvc > m_rndmSvc
Random number generator engine to use.
SG::ReadHandleKey< TileHitContainer > m_hitContainerKey
bool m_tileThresh
If true => apply threshold on the conversion to TileTTL1.
const TileID * m_tileID
Pointer to TileID helper.
SG::WriteHandleKey< TileTTL1Container > m_mbtsTTL1ContainerKey
bool m_tileNoise
If true => generate noise for the TileTTL1 creation.
virtual StatusCode finalize() override
finalize method
const TileCablingService * m_cabling
Pointer to the TileCablingService instance.
virtual StatusCode initialize() override
initialize method
int m_MBTSiTrig
index of the triggering time slice for MBTS TTL1
const TileInfo * m_tileInfo
Pointer to TileInfo.
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Name of TileEMScale in condition store.
SG::WriteHandleKey< TileTTL1Container > m_ttl1ContainerKey
const TileTBID * m_tileTBID
Pointer to TileID helper.
SG::ReadCondHandleKey< TileBadChannels > m_badChannelsKey
Name of TileBadChannels in condition store.
int m_MBTSnSamples
number of time slices for each chan for MBTS TTL1
Gaudi::Property< std::string > m_infoName
Gaudi::Property< std::string > m_TileTTL1Type
Gaudi::Property< std::string > m_randomStreamName
Random Stream Name.
const CaloLVL1_ID * m_TT_ID
Pointer to TT Identifier.
int m_lastTower
total number of towers in TileCal
int m_iTrig
index of the triggering time slice
int m_nSamples
number of time slices for each channel
virtual ~TileHitToTTL1()=default
Destructor.
const TileHWID * m_tileHWID
Pointer to TileHWID helper.
virtual StatusCode execute(const EventContext &ctx) const override
execute method
bool m_cosmicsType
if true => use dediated cosmcis TTL1
SG::ReadCondHandleKey< TileSamplingFraction > m_samplingFractionKey
Name of TileSamplingFraction in condition store.
Helper class for TileCal offline identifiers.
Definition TileID.h:67
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.