00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef HEPMCHELPER_IMCSELECTOR_H
00010 #define HEPMCHELPER_IMCSELECTOR_H
00011
00012 namespace HepMC{
00013 class GenParticle;
00014 }
00015 namespace HepMC_helper {
00016
00017 typedef HepMC::GenParticle Particle;
00018
00019
00020 class IMCselector{
00021 public:
00022
00023 virtual IMCselector* create() const = 0;
00024
00025 virtual bool operator()( const Particle* const) const = 0;
00026
00027 bool operator()( const Particle& p){return this->operator()(&p);}
00028
00029
00030 virtual ~IMCselector(){};
00031 };
00032 }
00033 #endif
00034
00035
00036
00037
00038