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

XANAEsdEvent.h

Go to the documentation of this file.
00001 #ifndef XANAEsdEvent_h
00002 #define XANAEsdEvent_h
00003 
00035 class XANAEmCluster;
00036 class XANAHadCluster;
00037 class XANACluster;
00038 class XANACaloRecHit;
00039 class XANAPreshowerInfo;
00040 class XANASuperCluster;
00041 class XANATrack;
00042 class XANATrackHit;
00043 class XANAVertex;
00044 class XANAElectronCandidate;
00045 class XANAElectronTrack;
00046 class XANAElectronGSFTrack;
00047 class XANAMuonCandidate;
00048 class XANAMuonTrack;
00049 class XANAElectronSeed;
00050 class XANAGeantEvent;
00051 class XANAGeantTrack;
00052 class XANAJet;
00053 class XANAMet;
00054 
00055 #include <XANADOO/XANATriggerInfo/interface/XANATriggerInfo.h>
00056 
00057 #include <TObjArray.h>
00058 //#include <TClonesArray.h>
00059 #include <TRefArray.h>
00060 #include <TRef.h>
00061 #include <TObject.h>
00062 #include <Rtypes.h>
00063 
00064 class XANAEsdEvent : public TObject {
00065 
00066  public:
00067 
00068   XANAEsdEvent();
00069 
00070   virtual ~XANAEsdEvent();
00071 
00072   // the public functions to fill the event
00073   void setHeader(Int_t ir, Int_t iev);  // run and event number
00074   void addEmCluster(const XANAEmCluster *cluster);
00075   void addHadCluster(const XANAHadCluster *cluster);
00076   void addEmClusterHit(const XANACaloRecHit *hit, XANACluster *cluster);
00077   void addCaloRecHit(const XANACaloRecHit *rhit);
00078   void addTrackHit(const XANATrackHit *thit, XANATrack *track);
00079   void addAllTrackHit(const XANATrackHit *thit);
00080   void addEleTrackHit(const XANATrackHit *elethit, XANAElectronTrack *eletrack);
00081   void addSuperCluster(const XANASuperCluster *super);
00082   void addSeedCluster(const XANAEmCluster *seed, XANASuperCluster *super);
00083   void addBremCluster(const XANAEmCluster *brem, XANASuperCluster *super);
00084   void addPreshCluster(XANAPreshowerInfo *presh, XANASuperCluster *super);
00085   void addTrack(const XANATrack *track);
00086   void addVertex(const XANAVertex *vtx);
00087   void addVertexTrack(const XANATrack *, XANAVertex *);
00088   void addTriggerInfo(XANATriggerInfo trigger);  
00089   void addElectronCandidate(XANAElectronCandidate *electron);
00090   //  void addElectronTrack(const XANAElectronTrack *trak, XANAElectronCandidate *electron);
00091   void setElectronTrack(const XANAElectronTrack *trak, XANAElectronCandidate *electron);
00092   void addElectronTrack(const XANAElectronTrack *trak);
00093   void addElectronTrackGSF(const XANAElectronGSFTrack *trak);
00094   void addElectronSuperCluster(const XANASuperCluster *super, XANAElectronCandidate *electron);
00095   void addMuonCandidate(XANAMuonCandidate *muon);
00096   void addMuonTrack(const XANAMuonTrack *trak, XANAMuonCandidate *muon);
00097   void addElectronSeed(const XANAElectronSeed *seed, XANAElectronTrack *track);
00098   void addJet(const XANAJet *jet); 
00099   void addJetCluster(const XANAHadCluster *cl, const XANAJet *jet);
00100   void addMet(const XANAMet *jet);
00101 
00102   void setGeantEvent(XANAGeantEvent * geantevt);
00103   void setCaloRecHit(const XANACaloRecHit * hit, const XANAGeantTrack * trk);
00104   void clear();
00105   
00106   // access methods
00107   Int_t getRunNumber() {return run_;}
00108   Int_t getEventNumber() {return evt_;}
00109   TObjArray *getEmClusters() {return emClusters_;}
00110   TObjArray *getHadClusters() {return hadClusters_;}
00111   TRefArray *getEmClusterHits() {return emClusterHits_;}
00112   TObjArray *getCaloRecHits() {return caloRecHits_;}
00113   TRefArray *getTrackHits() {return trackHits_;}
00114   TRefArray *getEleTrackHits() {return eleTrackHits_;}
00115   TObjArray *getAllTrackHits() {return allTrackHits_;}
00116   TObjArray *getSuperClusters() {return superClusters_;}
00117   TRefArray *getSeedClusters() {return seedClusters_;}
00118   TRefArray *getBremClusters() {return bremClusters_;}
00119   TObjArray *getPreshClusters() {return preshClusters_;}
00120   TObjArray *getTracks() {return tracks_;}
00121   TObjArray *getVertices() {return vertices_;}
00122   TRefArray *getVertexTracks() {return vertexTracks_;}
00123   TObjArray *getElectronCandidates() {return electronCandidates_;}
00124   TObjArray *getElectronTracks() {return electronTracks_;}
00125   TRefArray *getElectronSuperClusters() {return electronSuperClusters_;}
00126   TObjArray *getMuonCandidates() {return muonCandidates_;}
00127   TObjArray *getMuonTracks() {return muonTracks_;}
00128   TObjArray *getElectronSeeds() {return electronSeeds_;}
00129 //  TClonesArray *getJets() {return jets_;}
00130   TObjArray *getJets() {return jets_;}
00131   XANAMet *getMet() {return met_;}
00132   XANATriggerInfo getTriggerInfo() {return triggerInfo_;}
00133      
00134   Short_t getNumberOfEmClusters() {return numberOfEmClusters_;}
00135   Short_t getNumberOfHadClusters() {return numberOfHadClusters_;}
00136   Short_t getNumberOfEmClusterHits() {return numberOfEmClusterHits_;}
00137   Short_t getNumberOfCaloRecHits() {return numberOfCaloRecHits_;}
00138   Short_t getNumberOfTrackHits() {return numberOfTrackHits_;}
00139   Short_t getNumberOfAllTrackHits() {return numberOfAllTrackHits_;}
00140   Short_t getNumberOfEleTrackHits() {return numberOfEleTrackHits_;}
00141   Short_t getNumberOfSuperClusters() {return numberOfSuperClusters_;}
00142   Short_t getNumberOfPreshClusters() {return numberOfPreshClusters_;}
00143   Short_t getNumberOfTracks() {return numberOfTracks_;}
00144   Short_t getNumberOfVertices() {return numberOfVertices_;}
00145   Short_t getNumberOfVertexTracks() {return numberOfVertexTracks_;}
00146   Short_t getNumberOfElectronCandidates() {return numberOfElectronCandidates_;}
00147   Short_t getNumberOfElectronTracks() {return numberOfElectronTracks_;}
00148   Short_t getNumberOfElectronSuperClusters() {return numberOfElectronSuperClusters_;}
00149   Short_t getNumberOfMuonCandidates() {return numberOfMuonCandidates_;}
00150   Short_t getNumberOfMuonTracks() {return numberOfMuonTracks_;}
00151   Short_t getNumberOfElectronSeeds() {return numberOfElectronSeeds_;}
00152   Short_t getNumberOfJets() {return numberOfJets_;}
00153    
00154   void print();
00155 
00156 private:
00157   
00158   // event header
00159   Int_t run_;
00160   Int_t evt_;   
00161   
00163   Short_t numberOfEmClusters_;
00165   TObjArray *emClusters_; 
00167   Short_t numberOfEmClusterHits_;
00169   TRefArray *emClusterHits_; 
00171   Short_t numberOfSuperClusters_;
00173   TObjArray *superClusters_; 
00175   Short_t numberOfSeedClusters_;
00177   TRefArray *seedClusters_; 
00179   Short_t numberOfBremClusters_;
00181   TRefArray *bremClusters_; 
00183   Short_t numberOfPreshClusters_;
00185   TObjArray *preshClusters_; 
00187   Short_t numberOfHadClusters_;
00189   TObjArray *hadClusters_; 
00191   Short_t numberOfTracks_;
00193   TObjArray *tracks_; 
00195   Short_t numberOfCaloRecHits_;
00197   TObjArray *caloRecHits_;
00199   Short_t numberOfTrackHits_;
00201   TRefArray *trackHits_;
00203   Short_t numberOfAllTrackHits_;
00205   TObjArray *allTrackHits_;
00207   Short_t numberOfVertices_;
00209   TObjArray *vertices_; 
00211   Short_t numberOfVertexTracks_;
00213   TRefArray *vertexTracks_; 
00215   Short_t numberOfElectronCandidates_;
00217   TObjArray *electronCandidates_;
00219   Short_t numberOfElectronTracks_;
00221   TObjArray *electronTracks_; 
00223   Short_t numberOfEleTrackHits_;
00225   TRefArray *eleTrackHits_;
00227   Short_t numberOfElectronSuperClusters_;
00229   TRefArray *electronSuperClusters_; 
00231   Short_t numberOfMuonCandidates_;
00233   TObjArray *muonCandidates_;
00235   Short_t numberOfMuonTracks_;
00237   TObjArray *muonTracks_; 
00239   Short_t numberOfElectronSeeds_;
00241   TObjArray *electronSeeds_; 
00242 
00244   Short_t numberOfJets_;
00246 //  TClonesArray *jets_; 
00247   TObjArray *jets_; 
00249   XANAMet *met_; 
00250 
00252   XANATriggerInfo triggerInfo_;
00254   TRef geantEvt_;
00255 
00256   ClassDef(XANAEsdEvent,1) // ESD Event class 
00257   
00258 };
00259 
00260 #endif

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