#ifndef __HPARTICLEBOOKER_H__ #define __HPARTICLEBOOKER_H__ #include "hparticlecand.h" #include #include using namespace std; class HParticleBooker; R__EXTERN HParticleBooker *gParticleBooker; class HParticleBooker : public TObject { private: map > mTofHittoCand; //! TOF hit lookup detector hit ind -> list of candidates using this hit map > mTofClsttoCand; //! TOF cluster lookup detector hit ind -> list of candidates using this hit map > mRpcClsttoCand; //! RPC cluster lookup detector hit ind -> list of candidates using this hit map > mShowertoCand; //! SHOWER hit lookup detector hit ind -> list of candidates using this hit map > mInnerMdctoCand; //! inner Seg lookup detector hit ind -> list of candidates using this hit map > mOuterMdctoCand; //! outer Seg lookup detector hit ind -> list of candidates using this hit map > mRichtoCand; //! RICH hit lookup detector hit ind -> list of candidates using this hit void bookHits(HParticleCand* cand1); public: HParticleBooker(); ~HParticleBooker(); void nextEvent(); Int_t getSameRich (HParticleCand* cand,vector& candidates,UInt_t flag=0,Bool_t isReference=kTRUE); Int_t getSameInnerMdc(HParticleCand* cand,vector& candidates,UInt_t flag=0,Bool_t isReference=kTRUE); Int_t getSameOuterMdc(HParticleCand* cand,vector& candidates,UInt_t flag=0,Bool_t isReference=kTRUE); Int_t getSameMeta (HParticleCand* cand,vector& candidates,UInt_t flag=0,Bool_t isReference=kTRUE); Int_t getSameAny (HParticleCand* cand,vector& candidates,UInt_t flag=0,UInt_t detswitch=0,Bool_t isReference=kTRUE); ClassDef(HParticleBooker,0) }; #endif