00001
00002
00003
00004 #ifndef STJMCPARTICLELISTCUT_H
00005 #define STJMCPARTICLELISTCUT_H
00006
00007 #include <TObject.h>
00008
00009 #include "StjMCParticleCut.h"
00010
00011 #include "StjMCParticleList.h"
00012
00013 class StjMCParticleListCut : public TObject {
00014
00015 public:
00016 StjMCParticleListCut() { }
00017 virtual ~StjMCParticleListCut() { }
00018
00019 StjMCParticleList operator()(const StjMCParticleList& aList);
00020
00021 void addCut(StjMCParticleCut* cut) {
00022 _cutList.push_back(cut);
00023 }
00024
00025 typedef std::vector<StjMCParticleCut*> CutList;
00026 CutList getCutList() { return _cutList; }
00027
00028 private:
00029
00030 bool shouldNotKeep(const StjMCParticle& p);
00031
00032 CutList _cutList;
00033
00034 ClassDef(StjMCParticleListCut, 1)
00035
00036 };
00037
00038 #endif // STJMCPARTICLELISTCUT_H