1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
#ifndef HTrackAssociator_HTrackDetMatchInfo_h
#define HTrackAssociator_HTrackDetMatchInfo_h
#include "DataFormats/CaloTowers/interface/CaloTower.h"
#include "DataFormats/EcalRecHit/interface/EcalRecHit.h"
#include "DataFormats/HcalRecHit/interface/HBHERecHit.h"
#include "DataFormats/Math/interface/Vector3D.h"
#include "DataFormats/Math/interface/Point3D.h"
class HTrackDetMatchInfo {
public:
/// ECAL energy
double ecalEnergyFromRecHits();
double ecalConeEnergyFromRecHits();
double ecalEnergyFromCaloTowers();
double ecalConeEnergyFromCaloTowers();
/// HCAL energy
double hcalEnergyFromRecHits();
double hcalEnergyFromCaloTowers();
double hcalConeEnergyFromRecHits();
double hcalConeEnergyFromCaloTowers();
double hcalBoxEnergyFromRecHits();
double hcalBoxEnergyFromCaloTowers();
double outerHcalEnergy();
math::XYZPoint trkGlobPosAtEcal;
std::vector<EcalRecHit> crossedEcalRecHits;
std::vector<EcalRecHit> coneEcalRecHits;
math::XYZPoint trkGlobPosAtHcal;
std::vector<CaloTower> crossedTowers;
std::vector<CaloTower> coneTowers;
std::vector<CaloTower> boxTowers;
std::vector<CaloTower> regionTowers;
std::vector<HBHERecHit> crossedHcalRecHits;
std::vector<HBHERecHit> coneHcalRecHits;
std::vector<HBHERecHit> boxHcalRecHits;
std::vector<HBHERecHit> regionHcalRecHits;
bool isGoodEcal;
bool isGoodHcal;
bool isGoodCalo;
};
#endif
|