ATLAS Offline Software
Loading...
Searching...
No Matches
TileHitToRawChannel.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 : TileHitToRawChannel.h
7// Author : UC-ATLAS TileCal group
8// Created : April 2002
9//
10// DESCRIPTION
11//
12// To create TileRawChannel from TileHit
13//
14// Properties (JobOption Parameters):
15//
16// TileHitContainer string Name of container with TileHit to read
17// TileRawChannelContainer string Name of CaloCellContainer 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_TILEHITTORAWCHANNEL_H
28#define TILESIMALGS_TILEHITTORAWCHANNEL_H
29
30// Tile includes
39
40// Atlas includes
45
46// Gaudi includes
47#include "GaudiKernel/ToolHandle.h"
48#include "GaudiKernel/ServiceHandle.h"
49
50#include "CLHEP/Random/RandomEngine.h"
51
52
53#include <string>
54#include <vector>
55
56
57class IAthRNGSvc;
58class TileID;
59class TileTBID;
60class TileHWID;
61class TileInfo;
62class HWIdentifier;
64
65
78 public:
79
80 TileHitToRawChannel(const std::string& name, ISvcLocator* pSvcLocator);
81
82 virtual ~TileHitToRawChannel();
83
84 virtual StatusCode initialize() override;
85 virtual StatusCode execute() override;
86 virtual StatusCode finalize() override;
87
88 private:
89
90 SG::ReadHandleKey<TileHitContainer> m_hitContainerKey{this,"TileHitContainer","TileHitCnt",
91 "input Tile hit container key"};
92
94 "TileRawChannelCnt",
95 "Output Tile raw channel container key"};
96
100 "TileSamplingFraction", "TileSamplingFraction", "Input Tile sampling fraction"};
101
102
103 std::string m_infoName;
104 double m_deltaT;
106
109
115
116 std::vector<HWIdentifier *> m_all_ids;
117
120 double m_threshHi;
121 double m_ampMaxHi;
122
127 "TileCablingSvc", "TileCablingSvc", "The Tile cabling service"};
128
129 ServiceHandle<IAthRNGSvc> m_atRndmGenSvc{this, "RndmSvc", "AthRNGSvc", ""};
131 Gaudi::Property<std::string> m_randomStreamName{this, "RandomStreamName", "Tile_DigitsMaker", ""};
132
137 "TileEMScale", "TileEMScale", "Input Tile EMS calibration constants"};
138
139 ToolHandle<TileCondToolNoiseSample> m_tileToolNoiseSample{this,
140 "TileCondToolNoiseSample", "TileCondToolNoiseSample", "Tile sample noise tool"};
141
142};
143
144#endif // TILESIMALGS_TILEHITTORAWCHANNEL_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.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
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.
TYPE
initialize
Helper class for TileCal online (hardware) identifiers.
Definition TileHWID.h:49
bool m_tileThresh
If true => apply threshold on the conversion to raw channels.
ServiceHandle< IAthRNGSvc > m_atRndmGenSvc
Random number generator engine to use.
double m_ampMaxHi
Value of the maximum amplitude to be stored as a high gain channel.
double m_threshHi
Value of the mimimal amplitude required to do the conversion to raw channel in high gain (not used fo...
SG::ReadCondHandleKey< TileSamplingFraction > m_samplingFractionKey
Name of TileSamplingFraction in condition store.
SG::WriteHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
TileFragHash::TYPE m_rChType
Type of TileRawChannels (Digitizar, OF1, OF2, Fit, etc.)(see TileFragHash.h)
std::vector< HWIdentifier * > m_all_ids
Vector to store all the drawer ids.
SG::ReadHandleKey< TileHitContainer > m_hitContainerKey
std::string m_infoName
name of the TileInfo object
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Name of TileEMScale in condition store.
const TileCablingService * m_cabling
Pointer to the TileCablingService instance.
virtual ~TileHitToRawChannel()
Destructor.
bool m_calibrateEnergy
if true, amplitude is converted to pCb
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
virtual StatusCode finalize() override
finalize method
TileHitToRawChannel(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
double m_deltaT
if true, keep only hits in deltaT range
const TileInfo * m_tileInfo
Pointer to TileInfo.
Gaudi::Property< std::string > m_randomStreamName
Random Stream Name.
const TileID * m_tileID
Pointer to TileID helper.
virtual StatusCode initialize() override
initialize method
virtual StatusCode execute() override
execute method
const TileTBID * m_tileTBID
Pointer to TileID helper.
ToolHandle< TileCondToolNoiseSample > m_tileToolNoiseSample
bool m_tileNoise
If true => generate noise for the TileRawChannel creation.
const TileHWID * m_tileHWID
Pointer to TileHWID helper.
TileRawChannelUnit::UNIT m_rChUnit
Units used for the TileRawChannels (ADC, pCb, etc.)(see TileInfo.h)
Helper class for TileCal offline identifiers.
Definition TileID.h:67
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.