-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
yaml --- r: 77887 b: "refs/heads/CMSSW_7_1_X" c: 3a94378 h: "refs/heads/CMSSW_7_1_X" i: 77885: b983531 77883: c516fc3 77879: 0c31382 77871: 593ddd2 77855: 7881b6b 77823: b3b949c v: v3
- Loading branch information
Ronald Charles Remington
committed
Nov 13, 2009
1 parent
d2d6bc0
commit e8ff028
Showing
2 changed files
with
85 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
--- | ||
refs/heads/gh-pages: 09c786f70121f131b3715aaf3464996502bbeb7e | ||
"refs/heads/CMSSW_7_1_X": a56bc8179d4af6e7d1169334c1418cbfcb77992c | ||
"refs/heads/CMSSW_7_1_X": 3a9437898dfee2ce6854565744b2c66e5585e76b |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
#ifndef DATAFORMATS_METRECO_PHIWEDGE_H | ||
#define DATAFORMATS_METRECO_PHIWEDGE_H | ||
/* | ||
[class]: PhiWedge | ||
[authors]: R. Remington, The University of Florida | ||
[description]: Simple class analogous to CaloTower but in z-direction. Stores basic information related to Hcal and Ecal rechits within constant 5-degree phi windows. The idea will be to match these reconstructed phi-wedges with csc tracks for BeamHalo identification. | ||
[date]: October 15, 2009 | ||
*/ | ||
#include "TMath.h" | ||
#include <vector> | ||
namespace reco{ | ||
|
||
class PhiWedge { | ||
|
||
public: | ||
// Constructors | ||
PhiWedge(); | ||
PhiWedge(float E, int iphi, int constituents); | ||
PhiWedge(float E, int iphi, int constituents, float min_time , float max_time); | ||
PhiWedge(const PhiWedge&); | ||
// Destructors | ||
|
||
~PhiWedge(){} | ||
|
||
// Energy sum of all rechits above threshold in this 5-degree window | ||
float Energy() const {return energy_;} | ||
|
||
// Number of rechits above threshold in this 5-degree window | ||
int NumberOfConstituents() const {return constituents_;} | ||
|
||
// iPhi value of this 5-degree window | ||
int iPhi() const {return iphi_;} | ||
|
||
// Global phi lower bound of this 5-degree window (between 0 and 2Pi) | ||
float PhiLow() const {return 2.*TMath::Pi()*(float)((iphi_ * 5)-(5.));} | ||
|
||
// Global phi upper bound of this 5-degree window (between 0 and 2Pi | ||
float PhiHigh() const {return 2.*TMath::Pi()*(float)((iphi_* 5));} | ||
|
||
// Get Min/Max Time | ||
float MinTime()const{return min_time_;} | ||
float MaxTime()const{return max_time_;} | ||
|
||
// Get halo direction confidence based on time ordering of the rechits ( must be within range of -1 to + 1 ) | ||
// Direction is calculated by counting the number of pair-wise time-ascending rechits from -Z to +Z and then normalizing this count by number of pair-wise combinations | ||
// If all pair-wise combinations are consistent with a common z-direction, then this value will be plus or minus 1 exactly. Otherwise it will be somewhere in between. | ||
float PlusZDirectionConfidence() const { return (-1.)*PlusZOriginConfidence_;} | ||
float MinusZDirectionConfidence() const { return PlusZOriginConfidence_ ;} | ||
// Get halo origin confidence based on time ordering of the rechits | ||
float PlusZOriginConfidence() const { return PlusZOriginConfidence_ ;} | ||
float MinusZOriginConfidence() const { return (-1.)* PlusZOriginConfidence_;} | ||
|
||
// To be filled later or removed | ||
int OverlappingCSCTracks() const {return OverlappingCSCTracks_;} | ||
int OverlappingCSCSegments()const {return OverlappingCSCSegments_;} | ||
int OverlappingCSCRecHits() const {return OverlappingCSCRecHits_;} | ||
int OverlappingCSCHaloTriggers() const {return OverlappingCSCHaloTriggers_;} | ||
|
||
// Setters | ||
void SetOverlappingCSCTracks(int x) { OverlappingCSCTracks_ = x;} | ||
void SetOverlappingCSCSegments(int x) { OverlappingCSCSegments_ =x;} | ||
void SetOverlappingCSCRecHits(int x){ OverlappingCSCRecHits_ =x ;} | ||
void SetOverlappingCSCHaloTriggers(int x){ OverlappingCSCHaloTriggers_ = x ;} | ||
void SetMinMaxTime(float min, float max ){ min_time_ = min; max_time_ = max;} | ||
void SetPlusZOriginConfidence( float x ) { PlusZOriginConfidence_ = x ;} | ||
|
||
|
||
|
||
private: | ||
float energy_; | ||
int iphi_; | ||
int constituents_; | ||
float min_time_; | ||
float max_time_; | ||
float PlusZOriginConfidence_; | ||
int OverlappingCSCTracks_; | ||
int OverlappingCSCSegments_; | ||
int OverlappingCSCRecHits_; | ||
int OverlappingCSCHaloTriggers_; | ||
|
||
}; | ||
typedef std::vector<PhiWedge> PhiWedgeCollection; | ||
} | ||
#endif |