CMS 3D CMS Logo

CSCSegAlgoShowering.h
Go to the documentation of this file.
1 #ifndef CSCSegment_CSCSegAlgoShowering_h
2 #define CSCSegment_CSCSegAlgoShowering_h
3 
22 #include <vector>
23 
24 class CSCSegFit;
25 
27 
28  public:
29 
30  typedef std::vector<const CSCRecHit2D*> ChamberHitContainer;
31 
33  explicit CSCSegAlgoShowering(const edm::ParameterSet& ps);
34 
36  virtual ~CSCSegAlgoShowering();
37 
38  CSCSegment showerSeg( const CSCChamber* aChamber, const ChamberHitContainer& rechits );
39 
40 
41  private:
42 
44  bool isHitNearSegment(const CSCRecHit2D* h) const;
45  bool addHit(const CSCRecHit2D* hit, int layer);
46  bool hasHitOnLayer(int layer) const;
47  void compareProtoSegment(const CSCRecHit2D* h, int layer);
48  void pruneFromResidual(void);
49  void updateParameters(void);
50 
51  // Member variables
54 
55  ChamberHitContainer protoSegment;
56 
57  // input from .cfi file
58  bool debug;
60  double dRPhiFineMax;
61  double dPhiFineMax;
62  float tanPhiMax;
63  float tanThetaMax;
64  float chi2Max;
66 // float maxDR;
67  float maxDTheta;
68  float maxDPhi;
69 
70  CSCSegFit* sfit_; // current fit
71 };
72 #endif
73 
const std::string myName
void compareProtoSegment(const CSCRecHit2D *h, int layer)
bool isHitNearSegment(const CSCRecHit2D *h) const
Utility functions.
virtual ~CSCSegAlgoShowering()
Destructor.
CSCSegment showerSeg(const CSCChamber *aChamber, const ChamberHitContainer &rechits)
bool addHit(const CSCRecHit2D *hit, int layer)
CSCSegAlgoShowering(const edm::ParameterSet &ps)
Constructor.
std::vector< const CSCRecHit2D * > ChamberHitContainer
bool hasHitOnLayer(int layer) const
const CSCChamber * theChamber
ChamberHitContainer protoSegment