ATLAS Offline Software
Loading...
Searching...
No Matches
TileBeamElemToCell.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//****************************************************************************
6// Filename : TileCellFromRawChannel.h
7// Author : Ed Frank, Ambreesh Gupta, Frank Merritt
8// Created : Mar 2002
9//
10// DESCRIPTION
11//
12// TileCellFromRawChannel extracts the energy depositied in each
13// cell from the PMT amplitudes contained in TileRawChannel. (For
14// barrel and extended-barrel, two PMT's feed into each cell; for the
15// Gap cells, there is only one PMT.) Calibrations constants are
16// applied, and the total energy in the cell, the mean time of the
17// energy deposition, and the quality of the measurement are calculated
18// here. is returned.
19//
20// Clearly different things are needed for different data, e.g.,
21// full simulation vs. fast simulation vs. data. LAr handles this by
22// a strategy of having a top level algorithm that calls builder sub-algs
23// and a list of cell-correction sub-algs. It is not clear to us yet
24// how we (tile) will want to tie to the database nor what level of
25// complexity will exist in Tile for this task, so we will start with
26// the simplest thing, TileCellBuilderAlg, which will do both the
27// converstion of Raw to Cell and correctsions/scaling.
28//
29// Properties (JobOption Parameters):
30//
31// TileRawChannelContainer string Name of container with TileRawChannel to read
32// TileCellContainer string Name of CaloCellContainer to write
33// TileInfoName string Name of object in TDS with all parameters
34//
35// BUGS:
36//
37// History:
38// 02Mar02 Created from TileCellBuilderAlg.
39//
40//****************************************************************************
41
42#ifndef TILERECALGS_TILEBEAMELEMTOCELL_H
43#define TILERECALGS_TILEBEAMELEMTOCELL_H
44
45// Tile includes
47
48// Calo includes
50
51// Atlas includes
55
56
57// Avoid pushing dependencies into clients- just fwd declare the following:
58
59class TileTBID;
60class TileHWID;
61class TileCell;
62class TileInfo;
64
65// C++ STL includes
66#include <string>
67#include <vector>
68
70 public:
71 // Constructor
72 TileBeamElemToCell(const std::string& name, ISvcLocator* pSvcLocator);
73
74 //Destructor
75 virtual ~TileBeamElemToCell();
76
77 //Gaudi Hooks
78 StatusCode initialize();
79 StatusCode execute();
80 StatusCode finalize();
81
82 private:
83
85 "TileBeamElemCnt",
86 "Input Tile beam elements container key"};
87
89 "TileTBCellCnt", "Output Calo cell container key"};
90
91
92 std::string m_infoName;
93
98
99// std::vector<TileCell *> m_allCells;
100
101// Compute calibrated energy, time, etc. for TileCell and adjust it.
102 void correctCell(TileCell* pCell, int correction, int pmt, int gain,
103 double ener, double time, double qual);
104};
105
106#endif // TILERECALGS_TILEBEAMELEMTOCELL_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:
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.
const TileHWID * m_tileHWID
const TileTBID * m_tileTBID
const TileDetDescrManager * m_tileMgr
SG::WriteHandleKey< CaloCellContainer > m_cellContainerKey
const TileInfo * m_tileInfo
SG::ReadHandleKey< TileBeamElemContainer > m_beamElemContainerKey
void correctCell(TileCell *pCell, int correction, int pmt, int gain, double ener, double time, double qual)
TileBeamElemToCell(const std::string &name, ISvcLocator *pSvcLocator)
Helper class for TileCal online (hardware) identifiers.
Definition TileHWID.h:49
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.