Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

XANAElectronTrack.h

Go to the documentation of this file.
00001 #ifndef XANAElectronTrack_h
00002 #define XANAElectronTrack_h
00003 
00011 //class XANAVertex;
00012 class XANAElectronCandidate;
00013 class XANAElectronSeed;
00014 class XANASuperCluster;
00015 #include <XANADOO/XANATracks/interface/XANATrack.h>
00016 #include <CLHEP/Geometry/Point3D.h>
00017 #include <TObject.h>
00018 #include <TRef.h>
00019 #include <Rtypes.h>
00020 
00021 class XANAElectronTrack : public XANATrack {
00022 
00023 public:
00024 
00025   XANAElectronTrack();
00027   XANAElectronTrack(Short_t charge, Float_t chi2OverDof, Short_t numberOfTrackHits, 
00028    Short_t numberOfLostHits, Float_t impactParameter,
00029    Float_t longImpactParameter, Float_t transImpactParameter, HepVector3D
00030    momentumAtVertex, HepPoint3D positionAtFirstPoint, HepVector3D
00031    momentumAtFirstPoint, HepPoint3D positionAtLastPoint, 
00032    HepVector3D momentumAtLastPoint, std::string algoName);
00033   
00034   // copy constructor
00035   XANAElectronTrack(const XANAElectronTrack &right);
00036 
00037   virtual ~XANAElectronTrack();
00038     
00039   // relationships
00040   XANAElectronCandidate *getElectronCandidate() const {return (XANAElectronCandidate *)(electron_.GetObject());}
00041   void setElectronCandidate(XANAElectronCandidate *electron);
00042   XANASuperCluster *getSuperCluster() const {return (XANASuperCluster *)(cluster_.GetObject());}
00043   void setSuperCluster(XANASuperCluster *super);
00044   XANAElectronSeed *getElectronSeed() const {return (XANAElectronSeed *)(seed_.GetObject());}
00045   void setElectronSeed(XANAElectronSeed *seed);
00046   
00048   Bool_t IsUsed() const {return locked_;}
00049 
00050   Bool_t operator==(const XANAElectronTrack&) const;
00051   const XANAElectronTrack & operator=(const XANAElectronTrack &right);
00052   Bool_t operator<(const XANAElectronTrack&) const;
00053   
00054 
00055 protected:
00056 
00058   TRef electron_;
00060   TRef cluster_;
00062   TRef seed_;
00063 
00064   Bool_t locked_;
00065   void lock() {locked_ = true;}
00066   void unlock() { locked_ = false;}
00067       
00068   ClassDef(XANAElectronTrack,1) // electron track class 
00069 
00070 };
00071 
00072 #endif
00073 
00074 
00075 
00076 
00077 
00078 
00079 

Generated on Tue May 10 10:01:24 2005 for XANADOO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002