00001 #ifndef XANAGeantVertex_h 00002 #define XANAGeantVertex_h 00003 00009 class XANAGeantTrack; 00010 00011 #include "CLHEP/config/CLHEP.h" 00012 #include "CLHEP/Vector/LorentzVector.h" 00013 00014 #include <string> 00015 #include <TObject.h> 00016 #include <TRefArray.h> 00017 #include <TRef.h> 00018 #include <Rtypes.h> 00019 00020 using namespace CLHEP; 00021 00022 class XANAGeantVertex : public TObject { 00023 00024 public: 00025 00026 XANAGeantVertex(); 00027 00028 virtual ~XANAGeantVertex(); 00029 00031 XANAGeantVertex(HepLorentzVector vertex); 00032 00033 // access 00034 HepLorentzVector getPosition() const {return vertex_;} 00035 00036 // relationships 00037 void addGeantTrack(XANAGeantTrack *track); 00038 TRefArray * getTracks() const {return tracks_;} 00039 Short_t getNumberOfTracks() const { return numberOfTracks_;} 00040 00041 // operators 00042 Bool_t operator==(const XANAGeantVertex &v) const; 00043 00044 private: 00045 00047 HepLorentzVector vertex_; 00049 TRefArray *tracks_; 00051 Short_t numberOfTracks_; 00052 00053 ClassDef(XANAGeantVertex,1) 00054 00055 }; 00056 00057 00058 #endif