Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CandRmMu.h

Go to the documentation of this file.
00001 
00002 // $Id: CandRmMu.h,v 1.6 2008/09/17 02:56:19 tjyang Exp $
00003 //
00004 // CandRmMu
00005 //
00007 
00008 #ifndef CANDRMMU_H
00009 #define CANDRMMU_H
00010 
00011 #include "Candidate/CandHandle.h"
00012 #include "Candidate/CandBase.h"
00013 #include <map>
00014 
00015 class AlgHandle;
00016 class CandContext;
00017 class CandRmMuHandle;
00018 class CandDigit;
00019 
00020 class CandRmMu : public CandBase
00021 {
00022   friend class CandRmMuHandle;
00023   
00024  public:
00025   static CandRmMuHandle MakeCandidate(AlgHandle &ah,
00026                                       CandContext &cx);
00027   CandRmMu();
00028 
00029 protected:
00030   CandRmMu(AlgHandle &ah);
00031   CandRmMu(AlgHandle &ah, CandHandle &ch, CandContext &cx);
00032   CandRmMu(const CandRmMu &rhs);
00033   virtual ~CandRmMu();
00034   virtual void CreateLocalHandle();
00035   virtual CandRmMu *Dup() const;
00036   virtual Bool_t IsEquivalent(const TObject *rhs) const;
00037   
00038   mutable std::map<const CandDigit*,Int_t> fReasonForKeeping;
00039 
00040 //**************************
00041 // added by J. Ling
00042   Float_t shwvtxx;  // shower vertex x
00043   Float_t shwvtxy;  // shower vertex y
00044   Float_t shwvtxz;  // shower vertex z
00045   Float_t shwendx;  // shower end x
00046   Float_t shwendy;  // shower end y
00047   Float_t shwendz;  // shower end z
00048   Int_t   shwvtxplane; // shower vertex plane
00049   Int_t   shwendplane; // shower end plane
00050   Int_t   shwnplane;   // shower end - begin plane + 1
00051   Float_t shwcharge;   // shower mip
00052   
00053   Float_t vtxx;   //track vertex x
00054   Float_t vtxy;   //track vertex y
00055   Float_t vtxz;   //track vertex z
00056   Float_t vtxdistance;  // track vertex distance to the edge 
00057   Float_t endx;   //track end x
00058   Float_t endy;   //track end y
00059   Float_t endz;   //track end z
00060   Float_t enddistance; // track end distance to the edge
00061 
00062   Int_t   vtxp;   //track vertex plane
00063   Int_t   endp;   //track end plane
00064   Int_t   npln;   //track end - begin plane + 1
00065   Float_t prng;   //track mom from range
00066   Float_t pcrv;   //track mom from curvature
00067   Float_t pvdx;   //track vertex dir cos x
00068   Float_t pvdy;   //track vertex dir cos y
00069   Float_t pvdz;   //track vertex dir cos z
00070   
00071   Float_t zenith;  // track zenith angle
00072   Float_t azimuth; // track azimuth angle
00073 
00074   Int_t   fitp;   //track fit pass
00075   Int_t   endc;   //track contained?
00076   Int_t   pass;   //is track contained or, if not, fit is good
00077   Float_t pmux;   //track x momentum (using appropriate momentum)
00078   Float_t pmuy;   //track y momentum (using appropriate momentum)
00079   Float_t pmuz;   //track z momentum (using appropriate momentum)
00080   Double_t qp;    //q over pcurve
00081   //variables for MRM study
00082   Float_t mrmpmux;   //true muon x momentum
00083   Float_t mrmpmuy;   //true muon y momentum
00084   Float_t mrmpmuz;   //true muon z momentum
00085   Float_t mrmQ2;     //converted Q2
00086   Float_t mrmEshw;   //converted Eshw
00087 
00088   Int_t fOrigEvtIndex;         //Event index in original eventlist
00089   Int_t fMaxTrkPlane;          //Plane beyond which all hits are killed in MR technique
00090   
00091   Int_t fNMuonDig;             //The number of 'true muon' hits
00092   Int_t fNMuonDigRetained;     //The number of 'true muon' hits after removal
00093 
00094   Int_t fNShwDig;              //Number of true shower hits
00095   Int_t fNShwDigRetained;      //number of true shower hits after removal
00096   Int_t fNShwDigAtVtx;         //as above but for vertex shower only
00097   Int_t fNShwDigRetainedAtVtx;
00098  
00099   Float_t fNShwPE;             //shower pe's
00100   Float_t fNShwPERetained;     //shower pe's retained
00101   Float_t fNShwPEAtVtx;        //as above but for vertex shower only
00102   Float_t fNShwPERetainedAtVtx;
00103   
00104   Int_t fNRetained;            //number of hits retained
00105   Int_t fNRetainedMuon;        //for muon
00106   Int_t fNRetainedShw;         //for shower
00107   Int_t fNRetainedBoth;        //for both
00108 
00109   Float_t fPERetained;         //pe retained
00110   Float_t fPERetainedMuon;
00111   Float_t fPERetainedShw;
00112   Float_t fPERetainedBoth;
00113 
00114   Int_t fNRejected;
00115   Int_t fNRejectedMuon;
00116   Int_t fNRejectedShw;
00117   Int_t fNRejectedBoth;
00118 
00119   Int_t fNRejShw;
00120   Int_t fNRejShwMaxTrk;
00121   Int_t fNRejShwFakeTrk;
00122   Int_t fNRejShwMix;
00123 
00124   ClassDef(CandRmMu,4)
00125 };
00126 
00127 #endif                              // CANDRMMU_H

Generated on Mon Feb 15 11:06:28 2010 for loon by  doxygen 1.3.9.1