HTrackDetMatchInfo

Macros

Line Code
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