Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:12:34

0001 #ifndef PHPy6ParticleTrigger_h
0002 #define PHPy6ParticleTrigger_h
0003 
0004 #include "PHPy6GenTrigger.h"
0005 #include <HepMC/GenEvent.h>
0006 
0007 namespace HepMC
0008 {
0009   class GenEvent;
0010 };
0011 
0012 /**
0013  * Fun4All module based in PHPythia8/PHPy8ParticleTrigger
0014  *
0015  * Provides trigger for events gerenated by PHPythia6 event generator (Pythia6 wrapper for Fun4All).
0016  *
0017  * This trigger makes use of the conversion of Pythia6 events to HepMC format done in PHPythia6.
0018  *
0019  */
0020 class PHPy6ParticleTrigger: public PHPy6GenTrigger
0021 {
0022 public:
0023 
0024   //! constructor
0025   PHPy6ParticleTrigger(const std::string &name = "PHPy6ParticleTriggerger");
0026 
0027   //! destructor
0028   ~PHPy6ParticleTrigger( void ){}
0029 
0030 #ifndef __CINT__
0031   bool Apply(const HepMC::GenEvent* evt);
0032 #endif
0033 
0034 
0035   void SetParticleType(int pid);
0036   void SetQ2Min(double Q2);
0037 
0038 protected:
0039 
0040   // trigger variables
0041   std::vector<int> _theParents;
0042   std::vector<int> _theParticles;
0043 
0044 
0045   int _theParticleType;
0046   double _Q2Min;
0047 
0048   bool _doTheParticleType, _doQ2Min;
0049 };
0050 
0051 #endif