ATLAS Offline Software
TileCellDetailsFillerTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /*
6  * File: TileCellDetailsFillerTool.h
7  * Author: Stephen Cole <scole@niu.edu>
8  *
9  * Created on January 28, 2011, 3:12 PM
10  */
11 
12 #ifndef TILECELLDETAILSFILLERTOOL_H
13 #define TILECELLDETAILSFILLERTOOL_H
14 
16 #include "TileEvent/TileCell.h"
17 #include "GaudiKernel/ToolHandle.h"
19 
20 class TileID;
21 class TileHWID;
22 class TileCablingService;
23 
24 namespace D3PD {
25 
26  class TileCellDetailsFillerTool : public BlockFillerTool<CaloCell> {
27  public:
28  /*
29  @brief Standard Gaudi tool constructor.
30  @param type The name of the tool type.
31  @param name The tool name.
32  @param parent The tool's Gaudi parent.*/
33  TileCellDetailsFillerTool(const std::string& type,
34  const std::string& name,
35  const IInterface* parent);
36 
37 
39  virtual StatusCode initialize();
40 
41  //Book variables for this block.
42  virtual StatusCode book();
43 
44  /*
45  @brief Fill one block --- type-safe version.
46  @param p The input object.
47 
48  This is called once per object. The caller
49  is responsible for arranging that all the pointers for booked variables
50  are set appropriately upon entry.*/
51  virtual StatusCode fill (const CaloCell& p);
52 
53  // Method to dump all cell information to screen
54  void DumpCellInfo();
55 
56 
57  private:
58 
59  const TileID* m_tileid;
62 
63  ToolHandle<ITileBadChanTool> m_tileBadChanTool; //Tile bad channel tool
64 
65  bool m_saveCellDetails; //switching on/off cell details storage
66  bool m_savePosition; // switching on/off cell position storage
67 
68  bool m_run2plus;
69 
70  // variables to be in ntuple.
71 
72  //----***Removed, redundant with EventCommonD3PDMaker.FourMomFillerTool***----
76  //----******----
77 
96 
97  float* m_timeCells;
98  float* m_xCells;
99  float* m_yCells;
100  float* m_zCells;
101  float* m_tdiffCells;
102  float* m_ediffCells;
107  short* m_gain1Cells;
108  short* m_gain2Cells;
109  short* m_chan1Cells;
110  short* m_chan2Cells;
111  short* m_pmt1Cells;
112  short* m_pmt2Cells;
119 
120  bool m_notRealE1run2[2][64];
122 
123  };
124 
125 }
126 #endif /* TILECELLDETAILSFILLERTOOL_H */
127 
D3PD::TileCellDetailsFillerTool::E1_CHANNEL
@ E1_CHANNEL
Definition: TileCellDetailsFillerTool.h:121
D3PD::TileCellDetailsFillerTool::m_status1Cells
uint16_t * m_status1Cells
Definition: TileCellDetailsFillerTool.h:113
D3PD::TileCellDetailsFillerTool::m_chan1Cells
short * m_chan1Cells
Definition: TileCellDetailsFillerTool.h:109
D3PD::TileCellDetailsFillerTool::m_pmt1Cells
short * m_pmt1Cells
Definition: TileCellDetailsFillerTool.h:111
D3PD::TileCellDetailsFillerTool
Definition: TileCellDetailsFillerTool.h:26
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:557
D3PD::TileCellDetailsFillerTool::m_tileBadChanTool
ToolHandle< ITileBadChanTool > m_tileBadChanTool
Definition: TileCellDetailsFillerTool.h:63
D3PD::TileCellDetailsFillerTool::m_chan2Cells
short * m_chan2Cells
Definition: TileCellDetailsFillerTool.h:110
D3PD::TileCellDetailsFillerTool::m_savePosition
bool m_savePosition
Definition: TileCellDetailsFillerTool.h:66
D3PD::TileCellDetailsFillerTool::m_sampleCells
uint16_t * m_sampleCells
Definition: TileCellDetailsFillerTool.h:106
D3PD::TileCellDetailsFillerTool::m_tileid
const TileID * m_tileid
Definition: TileCellDetailsFillerTool.h:59
D3PD::TileCellDetailsFillerTool::m_qual2Cells
uint16_t * m_qual2Cells
Definition: TileCellDetailsFillerTool.h:116
D3PD::TileCellDetailsFillerTool::m_saveCellDetails
bool m_saveCellDetails
Definition: TileCellDetailsFillerTool.h:65
D3PD::TileCellDetailsFillerTool::m_pmt2Cells
short * m_pmt2Cells
Definition: TileCellDetailsFillerTool.h:112
BlockFillerTool.h
Type-safe wrapper for block filler tools.
D3PD::TileCellDetailsFillerTool::m_notRealE1run2
bool m_notRealE1run2[2][64]
Definition: TileCellDetailsFillerTool.h:120
D3PD::TileCellDetailsFillerTool::m_qbits1
uint8_t * m_qbits1
Definition: TileCellDetailsFillerTool.h:117
D3PD::TileCellDetailsFillerTool::m_yCells
float * m_yCells
Definition: TileCellDetailsFillerTool.h:99
D3PD::TileCellDetailsFillerTool::TileCellDetailsFillerTool
TileCellDetailsFillerTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TileCellDetailsFillerTool.cxx:27
TileHWID
Helper class for TileCal online (hardware) identifiers.
Definition: TileHWID.h:49
D3PD::TileCellDetailsFillerTool::DumpCellInfo
void DumpCellInfo()
Definition: TileCellDetailsFillerTool.cxx:189
D3PD
Block filler tool for noisy FEB information.
Definition: CaloCellDetailsFillerTool.cxx:29
D3PD::TileCellDetailsFillerTool::m_timeCells
float * m_timeCells
Definition: TileCellDetailsFillerTool.h:97
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
D3PD::TileCellDetailsFillerTool::initialize
virtual StatusCode initialize()
Standard Gaudi initialize method.
Definition: TileCellDetailsFillerTool.cxx:49
D3PD::TileCellDetailsFillerTool::fill
virtual StatusCode fill(const CaloCell &p)
Fill one block — type-safe version.
Definition: TileCellDetailsFillerTool.cxx:103
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:93
TileID
Helper class for TileCal offline identifiers.
Definition: TileID.h:68
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
D3PD::TileCellDetailsFillerTool::m_towerCells
uint16_t * m_towerCells
Definition: TileCellDetailsFillerTool.h:105
TileCell.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
D3PD::BlockFillerTool
Type-safe wrapper for block filler tools.
Definition: BlockFillerTool.h:65
TileCablingService
Definition: TileCablingService.h:23
D3PD::TileCellDetailsFillerTool::m_tdiffCells
float * m_tdiffCells
Definition: TileCellDetailsFillerTool.h:101
D3PD::TileCellDetailsFillerTool::m_status2Cells
uint16_t * m_status2Cells
Definition: TileCellDetailsFillerTool.h:114
D3PD::TileCellDetailsFillerTool::m_cabling
const TileCablingService * m_cabling
Definition: TileCellDetailsFillerTool.h:61
D3PD::TileCellDetailsFillerTool::m_qual1Cells
uint16_t * m_qual1Cells
Definition: TileCellDetailsFillerTool.h:115
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
D3PD::TileCellDetailsFillerTool::m_tilehwid
const TileHWID * m_tilehwid
Definition: TileCellDetailsFillerTool.h:60
D3PD::TileCellDetailsFillerTool::m_zCells
float * m_zCells
Definition: TileCellDetailsFillerTool.h:100
D3PD::TileCellDetailsFillerTool::book
virtual StatusCode book()
Declare tuple variables.
Definition: TileCellDetailsFillerTool.cxx:70
D3PD::TileCellDetailsFillerTool::m_gain1Cells
short * m_gain1Cells
Definition: TileCellDetailsFillerTool.h:107
D3PD::TileCellDetailsFillerTool::m_partitionCells
uint16_t * m_partitionCells
Definition: TileCellDetailsFillerTool.h:104
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
D3PD::TileCellDetailsFillerTool::CELL_CHANNEL
CELL_CHANNEL
Definition: TileCellDetailsFillerTool.h:121
D3PD::TileCellDetailsFillerTool::m_qbits2
uint8_t * m_qbits2
Definition: TileCellDetailsFillerTool.h:118
D3PD::TileCellDetailsFillerTool::m_moduleCells
uint16_t * m_moduleCells
Definition: TileCellDetailsFillerTool.h:103
D3PD::TileCellDetailsFillerTool::m_run2plus
bool m_run2plus
Definition: TileCellDetailsFillerTool.h:68
ITileBadChanTool.h
D3PD::TileCellDetailsFillerTool::m_ediffCells
float * m_ediffCells
Definition: TileCellDetailsFillerTool.h:102
D3PD::TileCellDetailsFillerTool::m_gain2Cells
short * m_gain2Cells
Definition: TileCellDetailsFillerTool.h:108
D3PD::TileCellDetailsFillerTool::m_xCells
float * m_xCells
Definition: TileCellDetailsFillerTool.h:98