5#ifndef GENERATOR_PYTHIA8B_H
6#define GENERATOR_PYTHIA8B_H
9#include "Pythia8/UserHooks.h"
19 Pythia8B_i(
const std::string &name, ISvcLocator *pSvcLocator);
27 virtual StatusCode
fillEvt(HepMC::GenEvent*);
29 bool leptonSelect(Pythia8::Event&,
const std::vector<double>&,
double,
const std::vector<int>&,
int,
double,
bool);
31 bool pairProperties(Pythia8::Event&,
const std::vector<int>&,
double,
bool);
33 std::vector<int>
getCodes(
const std::vector<Pythia8::Particle>&)
const;
34 bool compare(std::vector<int>, std::vector<int>)
const;
35 bool passesPTCuts(
const std::vector<Pythia8::Particle>&)
const;
36 bool passesEtaCuts(
const std::vector<Pythia8::Particle>&)
const;
37 bool signalAccept(Pythia8::Event&,
const std::vector<int>&,
unsigned int)
const;
38 bool userSelection(Pythia8::Event&, std::string, std::vector<double>);
39 void printSignalSelections(
const std::vector<int>&,
const std::vector<double>&,
const std::vector<double>&,
unsigned int)
const;
std::vector< long int > m_seeds
void printSignalSelections(const std::vector< int > &, const std::vector< double > &, const std::vector< double > &, unsigned int) const
std::vector< int > m_sigCodes
bool compare(std::vector< int >, std::vector< int >) const
static CLHEP::HepRandomEngine * p_rndmEngine
std::vector< int > m_internalEventNumbers
std::vector< double > m_sigPtCuts
unsigned int m_nSignalRequired
bool passesPTCuts(const std::vector< Pythia8::Particle > &) const
bool leptonSelect(Pythia8::Event &, const std::vector< double > &, double, const std::vector< int > &, int, double, bool)
Pythia8::SuppressSmallPT * m_SuppressSmallPT
virtual StatusCode callGenerator()
For calling the generator on each iteration of the event loop.
void descendThroughDecay(Pythia8::Event &, std::vector< Pythia8::Particle > &, int) const
bool passesEtaCuts(const std::vector< Pythia8::Particle > &) const
std::vector< Pythia8::Event > m_BEventBuffer
std::vector< int > getCodes(const std::vector< Pythia8::Particle > &) const
std::vector< int > m_bcodes
std::map< int, int > m_speciesCount
virtual StatusCode genFinalize()
For finalising the generator, if required.
std::vector< int > m_cutCount
bool signalAccept(Pythia8::Event &, const std::vector< int > &, unsigned int) const
virtual StatusCode genuserInitialize()
For initialization of user code, if required. Called after genInitialize.
bool cleanUndecayed(Pythia8::Event &, const std::vector< int > &)
unsigned int m_failureCount
std::vector< double > m_trigPtCut
virtual StatusCode fillEvt(HepMC::GenEvent *)
For filling the HepMC event object.
bool userSelection(Pythia8::Event &, std::string, std::vector< double >)
std::vector< double > m_userVar
bool pairProperties(Pythia8::Event &, const std::vector< int > &, double, bool)
virtual StatusCode genInitialize()
For initializing the generator, if required.
std::vector< double > m_sigEtaCuts
Pythia8B_i(const std::string &name, ISvcLocator *pSvcLocator)
int m_internal_event_number
Pythia8_i(const std::string &name, ISvcLocator *pSvcLocator)