ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/PsCluster.h
Revision: 1.1
Committed: Sat May 5 16:49:10 2012 UTC (13 years ago) by paus
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_032, Mit_031, Mit_025c_branch2, Mit_025c_branch1, Mit_030, Mit_029c, Mit_029b, Mit_030_pre1, Mit_029a, Mit_029, Mit_029_pre1, Mit_028a, Mit_025c_branch0, Mit_028, Mit_027a, Mit_027, HEAD
Branch point for: Mit_025c_branch
Log Message:
Version 027 - complete version for ICHEP 2012.

File Contents

# User Rev Content
1 paus 1.1 //---------------------------------------------------------------------------------------------------
2     // $Id: PsCluster.h,v 1.21 2012/04/20 16:06:55 bendavid Exp $
3     //
4     // PsCluster
5     //
6     // This class holds information of basic reconstructed clusters.
7     //
8     // Authors: C.Paus, J.Bendavid, S.Xie
9     //---------------------------------------------------------------------------------------------------
10    
11     #ifndef MITANA_DATATREE_PSCLUSTER_H
12     #define MITANA_DATATREE_PSCLUSTER_H
13    
14     #include <TMath.h>
15     #include "MitCommon/DataFormats/interface/Vect3C.h"
16     #include "MitAna/DataTree/interface/DataObject.h"
17    
18     namespace mithep
19     {
20     class PsCluster : public DataObject
21     {
22     public:
23     PsCluster() :
24     fEnergy (0),
25     fNHits (0),
26     fInsideMustache(kFALSE),
27     fPsPlane (0)
28     {}
29    
30     PsCluster(Double_t e, const ThreeVector &p) :
31     fEnergy (e),
32     fPoint (p),
33     fNHits (0),
34     fInsideMustache(kFALSE),
35     fPsPlane (0)
36     {}
37    
38     Double_t Energy() const { return fEnergy; }
39     Double_t Et() const;
40     Double_t Eta() const { return fPoint.Eta(); }
41     EObjType ObjType() const { return kPsCluster; }
42     Double_t Phi() const { return fPoint.Phi(); }
43     ThreeVectorC Pos() const { return fPoint.V(); }
44     void Print(Option_t *opt="") const;
45     Double_t Rho() const { return fPoint.Rho(); }
46     Int_t NHits() const { return fNHits; }
47     Bool_t InsideMustache() const { return fInsideMustache; }
48     UChar_t PsPlane() const { return fPsPlane; }
49    
50     void SetEnergy(Double_t e) { fEnergy = e; }
51     void SetXYZ(Double_t x, Double_t y, Double_t z) { fPoint.SetXYZ(x,y,z); }
52     void SetNHits(Int_t x) { fNHits = x; }
53     void SetInsideMustache(Bool_t b) { fInsideMustache = b; }
54     void SetPsPlane(UChar_t i) { fPsPlane = i; }
55    
56    
57     protected:
58    
59     Double32_t fEnergy; //[0,0,14]assigned energy
60     Vect3C fPoint; //centroid Position
61    
62     Int_t fNHits;
63     Double32_t fSumRecHitEnergy; //energy from manual rechit sum (bug recovery band aid)
64     Bool_t fInsideMustache; //is inside mustache profile of parent supercluster
65     UChar_t fPsPlane; //preshower plane (0 for Ecal clusters)
66    
67     ClassDef(PsCluster, 1) // Preshower cluster class
68     };
69     }
70    
71     //---------------------------------------------------------------------------------------------------
72     inline Double_t mithep::PsCluster::Et() const
73     {
74     // Return transverse energy.
75    
76     return fEnergy*fPoint.Rho()/fPoint.V().R();
77     }
78     #endif