1 #ifndef RECOLOCALCALO_CALOTOWERSCREATOR_CALOTOWERSCREATIONALGO_H
2 #define RECOLOCALCALO_CALOTOWERSCREATOR_CALOTOWERSCREATIONALGO_H 1
58 bool useEtEBTreshold,
bool useEtEETreshold,
59 bool useSymEBTreshold,
bool useSymEETreshold,
62 double HBthreshold,
double HESthreshold,
double HEDthreshold,
63 double HOthreshold0,
double HOthresholdPlus1,
double HOthresholdMinus1,
64 double HOthresholdPlus2,
double HOthresholdMinus2,
65 double HF1threshold,
double HF2threshold,
66 double EBweight,
double EEweight,
67 double HBweight,
double HESweight,
double HEDweight,
68 double HOweight,
double HF1weight,
double HF2weight,
81 bool useEtEBTreshold,
bool useEtEETreshold,
82 bool useSymEBTreshold,
bool useSymEETreshold,
85 double HBthreshold,
double HESthreshold,
double HEDthreshold,
86 double HOthreshold0,
double HOthresholdPlus1,
double HOthresholdMinus1,
87 double HOthresholdPlus2,
double HOthresholdMinus2,
88 double HF1threshold,
double HF2threshold,
89 const std::vector<double> &
EBGrid,
const std::vector<double> &
EBWeights,
90 const std::vector<double> &
EEGrid,
const std::vector<double> &
EEWeights,
91 const std::vector<double> &
HBGrid,
const std::vector<double> &
HBWeights,
94 const std::vector<double> &
HOGrid,
const std::vector<double> &
HOWeights,
97 double EBweight,
double EEweight,
98 double HBweight,
double HESweight,
double HEDweight,
99 double HOweight,
double HF1weight,
double HF2weight,
205 float fracDepth,
double hadE);
207 float fracDepth,
double totEmE);
215 float fracDepth,
double totEmE);
std::vector< double > theHBGrid
const EcalChannelStatus * theEcalChStatus
bool theUseEtEETresholdFlag
const HcalChannelQuality * theHcalChStatus
void setEcalChStatusFromDB(const EcalChannelStatus *s)
void setHF1EScale(double scale)
std::vector< double > theHESGrid
std::vector< double > theHEDGrid
GlobalPoint emCrystalShwrPos(DetId detId, float fracDepth)
void assignHitHcal(const CaloRecHit *recHit)
std::vector< int > theEcalSeveritiesToBeUsedInBadTowers
GlobalPoint emShwrPos(const std::vector< std::pair< DetId, float > > &metaContains, float fracDepth, double totEmE)
void setHcalChStatusFromDB(const HcalChannelQuality *s)
void setHF2EScale(double scale)
void finish(CaloTowerCollection &destCollection)
void setEeHandle(const edm::Handle< EcalRecHitCollection > ee)
edm::Handle< EcalRecHitCollection > theEeHandle
std::vector< double > theHOWeights
MetaTower & find(const CaloTowerDetId &id)
looks for a given tower in the internal cache. If it can't find it, it makes it.
std::vector< double > theEEGrid
void rescale(const CaloTower *ct)
void setHBEScale(double scale)
std::vector< double > theEEWeights
std::vector< double > theHESWeights
void setGeometry(const CaloTowerTopology *cttopo, const CaloTowerConstituentsMap *ctmap, const HcalTopology *htopo, const CaloGeometry *geo)
GlobalPoint hadShwrPos(const std::vector< std::pair< DetId, float > > &metaContains, float fracDepth, double hadE)
void setEbHandle(const edm::Handle< EcalRecHitCollection > eb)
const CaloSubdetectorGeometry * theTowerGeometry
void setUseRejectedRecoveredEcalHits(bool flag)
unsigned int hcalChanStatusForCaloTower(const CaloRecHit *hit)
std::vector< double > theHF2Grid
std::map< CaloTowerDetId, int > HcalDropChMap
std::vector< double > theHEDWeights
unsigned int useRejectedRecoveredEcalHits
void rescaleTowers(const CaloTowerCollection &ctInput, CaloTowerCollection &ctResult)
const CaloGeometry * theGeometry
void setEcalSeveritiesToBeExcluded(const std::vector< int > &ecalSev)
void setHcalAcceptSeverityLevelForRejectedHit(unsigned int level)
GlobalPoint emShwrLogWeightPos(const std::vector< std::pair< DetId, float > > &metaContains, float fracDepth, double totEmE)
void setHcalSevLvlComputer(const HcalSeverityLevelComputer *c)
std::vector< double > theHOGrid
void assignHitEcal(const EcalRecHit *recHit)
adds a single hit to the tower
const CaloTowerConstituentsMap * theTowerConstituentsMap
double theHOthresholdPlus1
void convert(const CaloTowerDetId &id, const MetaTower &mt, CaloTowerCollection &collection)
const CaloTowerTopology * theTowerTopology
void SetEcalSeveritiesToBeUsedInBadTowers(const std::vector< int > &ecalSev)
std::vector< double > theHF1Weights
void setRecoveredEcalHitsAreUsed(bool flag)
GlobalPoint hadSegmentShwrPos(DetId detId, float fracDepth)
std::vector< int > mergedDepths
bool theRecoveredHcalHitsAreUsed
bool theHOIsUsed
only affects energy and ET calculation. HO is still recorded in the tower
void process(const HBHERecHitCollection &hbhe)
unsigned int useRejectedRecoveredHcalHits
double theHOthresholdMinus2
std::vector< double > theHBWeights
const HcalSeverityLevelComputer * theHcalSevLvlComputer
void setHESEScale(double scale)
void setHEDEScale(double scale)
unsigned int theTowerMapSize
std::vector< MetaTower > MetaTowerMap
bool theUseSymEBTresholdFlag
void setEEEScale(double scale)
int compactTime(float time)
GlobalPoint hadShwPosFromCells(DetId frontCell, DetId backCell, float fracDepth)
void setRecoveredHcalHitsAreUsed(bool flag)
void getThresholdAndWeight(const DetId &detId, double &threshold, double &weight) const
helper method to look up the appropriate threshold & weight
void setUseRejectedHitsOnly(bool flag)
const HcalTopology * theHcalTopology
std::vector< int > theEcalSeveritiesToBeExcluded
std::vector< unsigned short > ecalBadChs
void setHOEScale(double scale)
double theHOthresholdMinus1
const EcalSeverityLevelAlgo * theEcalSevLvlAlgo
void setHcalAcceptSeverityLevel(unsigned int level)
std::vector< double > theHF1Grid
std::vector< double > theEBGrid
std::vector< double > theHF2Weights
void setEcalSevLvlAlgo(const EcalSeverityLevelAlgo *a)
bool theUseEtEBTresholdFlag
void setUseRejectedRecoveredHcalHits(bool flag)
unsigned int theHcalAcceptSeverityLevelForRejectedHit
std::tuple< unsigned int, bool > ecalChanStatusForCaloTower(const EcalRecHit *hit)
HcalDropChMap hcalDropChMap
void setEBEScale(double scale)
std::vector< double > theEBWeights
double theHOthresholdPlus2
bool theRecoveredEcalHitsAreUsed
unsigned int theHcalAcceptSeverityLevel
bool theUseSymEETresholdFlag
edm::Handle< EcalRecHitCollection > theEbHandle