00001 #ifndef STAR_StChargedPionBaseEv
00002 #define STAR_StChargedPionBaseEv
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include <map>
00014 using std::map;
00015
00016 #include <string>
00017 using std::string;
00018
00019 #include "TObject.h"
00020 class TClonesArray;
00021
00022 class StChargedPionVertex;
00023 class StChargedPionTrack;
00024 class StChargedPionJet;
00025
00026 class StChargedPionBaseEv : public TObject
00027 {
00028 public:
00029 virtual unsigned int runId() const = 0;
00030 virtual unsigned int eventId() const = 0;
00031 virtual unsigned int bbcTimeBin() const = 0;
00032
00033 virtual const string& muDstName() const = 0;
00034
00035 virtual bool isSimuTrigger(unsigned int trigId) const = 0;
00036
00037 virtual int highTowerAdc(short towerId) const = 0;
00038 virtual int triggerPatchAdc(short patchId) const = 0;
00039 virtual int jetPatchAdc(short patchId) const = 0;
00040
00041 virtual unsigned int nVertices() const = 0;
00042 virtual TClonesArray* vertices() = 0;
00043 virtual const TClonesArray* vertices() const = 0;
00044
00045 virtual unsigned int nTracks() const = 0;
00046 virtual TClonesArray* tracks() = 0;
00047 virtual const TClonesArray* tracks() const = 0;
00048
00049 virtual unsigned int nJets() const = 0;
00050 virtual TClonesArray* jets() = 0;
00051 virtual const TClonesArray* jets() const = 0;
00052
00053 virtual StChargedPionVertex* vertex(int i) = 0;
00054 virtual const StChargedPionVertex* vertex(int i) const = 0;
00055
00056 virtual StChargedPionTrack* track(int i) = 0;
00057 virtual const StChargedPionTrack* track(int i) const = 0;
00058
00059 virtual StChargedPionJet* jet(int i) = 0;
00060 virtual const StChargedPionJet* jet(int i) const = 0;
00061
00062
00063 virtual void setRunId(unsigned int) = 0;
00064 virtual void setEventId(unsigned int) = 0;
00065 virtual void setBbcTimeBin(unsigned short) = 0;
00066 virtual void setMuDstName(const char*) = 0;
00067 virtual void addSimuTrigger(unsigned int) = 0;
00068 virtual void addHighTower(short towerId, int ADC) = 0;
00069 virtual void addTriggerPatch(short patchId, int ADC) = 0;
00070 virtual void addJetPatch(short patchId, int ADC) = 0;
00071 virtual void addVertex(const StChargedPionVertex*) = 0;
00072 virtual void addTrack(const StChargedPionTrack*) = 0;
00073 virtual void addJet(const StChargedPionJet*) = 0;
00074
00075 virtual void setL2Result(const void *address, bool emulated=false) = 0;
00076
00077
00078 static unsigned int triggerBit(unsigned int trigId);
00079
00080 protected:
00081 static map<unsigned int, unsigned int> mTriggerLookup;
00082
00083 private:
00084 ClassDef(StChargedPionBaseEv, 1)
00085 };
00086
00087 #endif
00088
00089
00090
00091
00092
00093
00094