00001
00002
00003
00004 #ifndef STPARTICLECOLLECTOR_H
00005 #define STPARTICLECOLLECTOR_H
00006
00007 #include "StppAnaPars.h"
00008
00009 #include <list>
00010
00011 class AbstractFourVec;
00012 class StFourPMaker;
00013 class StMuTrackFourVec;
00014
00015 class StjeParticleCollector {
00016
00017 public:
00018
00019 typedef std::vector<const AbstractFourVec*> ParticleList;
00020
00021 StjeParticleCollector(const StppAnaPars* ap, StFourPMaker* fp, ParticleList& particleList);
00022
00023 virtual ~StjeParticleCollector() {}
00024
00025 void Do(int iVertex);
00026 size_t numberOfVertices() const;
00027
00028 private:
00029
00030 bool shoudNotPassToJetFinder(const AbstractFourVec* particle) const;
00031
00032 bool isChargedTrack(const StMuTrackFourVec* p) const;
00033
00034 StFourPMaker* _fourPMaker;
00035 ParticleList& _particleList;
00036
00037 StppAnaPars _anaPar;
00038
00039 };
00040
00041 #endif // STPARTICLECOLLECTOR_H