00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #include "HepMC/GenParticle.h"
00016 #include "HepMC_helpere.h"
00017
00018 namespace CellMakerHistogram_helper{
00023 class FiresCell {
00024 public:
00026 FiresCell(): m_flag(0) {}
00028 FiresCell(int n): m_flag(n) {}
00029
00030 bool operator()( const HepMC::GenParticle* p ) {
00031
00032 int pdg=p->pdg_id();
00033 if(m_flag>0 && pdg<0) return 0;
00034 if(m_flag<0 && pdg>0) return 0;
00035
00036
00037 int pdg=abs(pdg);
00038 if(pdg == 12 || pdg == 13 || pdg == 14 || pdg == 16) return 0;
00039
00040 HepMC_helper::IsFinalState ifs;
00041
00042 return ifs(p);
00043 }
00044 private:
00045 int m_flag;
00046 };
00047
00048
00049 class FiresCell {
00050 public:
00051
00052 FiresCell() {}
00053
00054 bool operator()( const HepMC::GenParticle* p ) {
00055
00056 int pdg=abs(p->pdg_id());
00057 if(pdg == 12 || pdg == 13 || pdg == 14 || pdg == 16){
00058 return 0;
00059 }
00060
00061 HepMC_helper::IsFinalState ifs;
00062
00063 return ifs(p);
00064 }
00065 };
00066
00067 }
00068
00069
00070
00071
00072
00073
00074
00075
00076