ATLAS Offline Software
ICellWeightTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef CALOINTERFACE_ICELLWEIGHTTOOL_H
6 #define CALOINTERFACE_ICELLWEIGHTTOOL_H
7 /***********************************************************************
8 Filename : ICellWeightTool.h
9 Author : Frank Paige
10 Created : August 2004
11 
12 Modified : Kyle Cranmer Feb, 2005
13  - old ICellWeightTool now called IHadronicCalibrationTool.
14  - this interface only has wtCell( cell ) now
15 
16 
17 DESCRIPTION:
18 
19  Pure interface base class for cell weight tools. Derived classes
20 must implement:
21  wtCell: Return just weight without ET or energy factor
22 
23 
24 
25 Note the navigation weight factor is *not* in wtCell. One must include
26 this to get the right energy for a jet, e.g.
27 
28  NavigationToken<CaloCell,double> cellToken;
29  NavigationToken<CaloCell,double>::const_iterator cell = cellToken.begin();
30  NavigationToken<CaloCell,double>::const_iterator cellE = cellToken.end();
31  for( ; cell != cellE ; ++cell ) {
32  ...
33  double cellWt = cellToken.getParameter(cell);
34  double eCalib = cellWt * (*cell)->e() * wtCell(*cell);
35  ...
36  }
37 
38 It *is* included via the second argument of etcell, which is used by
39 JetRec::JetCellCalibratorTool.
40 
41 ***********************************************************************/
42 
43 #include "GaudiKernel/IAlgTool.h"
44 
45 class CaloCell;
46 
47 class ICellWeightTool : virtual public IAlgTool
48 {
49  public:
51 
52  virtual double wtCell(const CaloCell* thisCell) const = 0;
53 };
54 
55 #endif
56 
ICellWeightTool
Definition: ICellWeightTool.h:48
ICellWeightTool::wtCell
virtual double wtCell(const CaloCell *thisCell) const =0
ICellWeightTool::DeclareInterfaceID
DeclareInterfaceID(ICellWeightTool, 1, 0)
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57