Main Page
Namespaces
Classes
Package Documentation
RecoLocalCalo
HcalRecAlgos
interface
AbsHBHEPhase1Algo.h
Go to the documentation of this file.
1
#ifndef RecoLocalCalo_HcalRecAlgos_AbsHBHEPhase1Algo_h_
2
#define RecoLocalCalo_HcalRecAlgos_AbsHBHEPhase1Algo_h_
3
4
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
5
#include "
DataFormats/HcalRecHit/interface/HBHERecHit.h
"
6
#include "
DataFormats/HcalRecHit/interface/HBHEChannelInfo.h
"
7
#include "
CalibFormats/HcalObjects/interface/HcalCalibrations.h
"
8
#include "
CondFormats/HcalObjects/interface/HcalRecoParam.h
"
9
10
class
AbsHcalAlgoData
;
11
12
//
13
// It is assumed that the HBHE Phase 1 algorithms will be developed
14
// utilizing pairs of classes: a DB class with relevant calibration
15
// constants and configuration parameters, derived from AbsHcalAlgoData,
16
// and the algo class, derived from AbsHBHEPhase1Algo, utilizing that DB class.
17
//
18
// We can expect that the same calibration constants might be utilized
19
// by different reco algorithms.
20
//
21
// In principle, of course, the configuration objects do not have to be
22
// actually stored in the database. It is expected that, at the early
23
// stages of our understanding of energy reconstruction with QIE11
24
// ASICs, these objects will be created from the module configuration
25
// parameters.
26
//
27
class
AbsHBHEPhase1Algo
28
{
29
public
:
30
inline
virtual
~AbsHBHEPhase1Algo
() {}
31
32
inline
virtual
void
beginRun
(
const
edm::Run
&,
const
edm::EventSetup
&) {}
33
inline
virtual
void
endRun
() {}
34
35
// Does this class expect to receive its configuration from the database?
36
virtual
bool
isConfigurable
()
const
= 0;
37
38
// If using DB, expect that the configuration will be updated
39
// once per run. We will not manage the pointer here. "true"
40
// should be returned on success (typically, automatic cast
41
// from the pointer checked by the appropriate dynamic cast).
42
inline
virtual
bool
configure
(
const
AbsHcalAlgoData
*) {
return
false
;}
43
44
// Convention: if we do not want to use the given channel at
45
// all (i.e., it is to be discarded), the returned HBHERecHit
46
// should have its id (of type HcalDetId) set to 0.
47
//
48
// Note that "params" pointer is allowed to be null.
49
//
50
virtual
HBHERecHit
reconstruct
(
const
HBHEChannelInfo
&
info
,
51
const
HcalRecoParam
* params,
52
const
HcalCalibrations
& calibs,
53
bool
isRealData) = 0;
54
};
55
56
#endif // RecoLocalCalo_HcalRecAlgos_AbsHBHEPhase1Algo_h_
HBHEChannelInfo
Definition:
HBHEChannelInfo.h:14
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition:
FWCollectionSummaryWidget.cc:170
HBHEChannelInfo.h
HcalRecoParam.h
HcalCalibrations.h
HcalCalibrations
Definition:
HcalCalibrations.h:9
AbsHBHEPhase1Algo::endRun
virtual void endRun()
Definition:
AbsHBHEPhase1Algo.h:33
HBHERecHit.h
Frameworkfwd.h
HBHERecHit
Definition:
HBHERecHit.h:14
AbsHBHEPhase1Algo::isConfigurable
virtual bool isConfigurable() const =0
AbsHBHEPhase1Algo::beginRun
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
Definition:
AbsHBHEPhase1Algo.h:32
edm::EventSetup
Definition:
EventSetup.h:47
AbsHBHEPhase1Algo
Definition:
AbsHBHEPhase1Algo.h:27
AbsHBHEPhase1Algo::configure
virtual bool configure(const AbsHcalAlgoData *)
Definition:
AbsHBHEPhase1Algo.h:42
AbsHBHEPhase1Algo::~AbsHBHEPhase1Algo
virtual ~AbsHBHEPhase1Algo()
Definition:
AbsHBHEPhase1Algo.h:30
HcalRecoParam
Definition:
HcalRecoParam.h:17
AbsHcalAlgoData
Definition:
AbsHcalAlgoData.h:10
AbsHBHEPhase1Algo::reconstruct
virtual HBHERecHit reconstruct(const HBHEChannelInfo &info, const HcalRecoParam *params, const HcalCalibrations &calibs, bool isRealData)=0
edm::Run
Definition:
Run.h:43
Generated for CMSSW Reference Manual by
1.8.11