8 #ifndef Pythia8_FastJet3_H
9 #define Pythia8_FastJet3_H
83 #include "fastjet/config.h"
84 #include "fastjet/ClusterSequence.hh"
85 #include "fastjet/Selector.hh"
86 #include "Pythia8/Event.h"
90 #ifndef FASTJET_VERSION
91 #error "FastJet3 is required in order to obtain the features of this interface"
94 FASTJET_BEGIN_NAMESPACE
111 reset(particle.px(),particle.py(),particle.pz(), particle.e());
118 inline PseudoJet::PseudoJet(
const Pythia8::Vec4 & particle) {
119 reset(particle.px(),particle.py(),particle.pz(), particle.e());
142 _member_fn_ptr(member_fn_ptr), _value(value) {};
151 if (py8_particle == 0) {
154 return (py8_particle->*_member_fn_ptr)() == _value;
169 inline Selector SelectorIsFinal () {
return
171 inline Selector SelectorIsCharged () {
return
173 inline Selector SelectorIsNeutral () {
return
175 inline Selector SelectorIsResonance() {
return
177 inline Selector SelectorIsVisible () {
return
179 inline Selector SelectorIsLepton () {
return
181 inline Selector SelectorIsQuark () {
return
183 inline Selector SelectorIsGluon () {
return
185 inline Selector SelectorIsDiquark () {
return
187 inline Selector SelectorIsParton () {
return
189 inline Selector SelectorIsHadron () {
return
200 inline Selector SelectorId (
int i) {
return
202 inline Selector SelectorIdAbs (
int i) {
return
204 inline Selector SelectorStatus (
int i) {
return
206 inline Selector SelectorStatusAbs(
int i) {
return
211 FASTJET_END_NAMESPACE
213 #endif // Pythia8_FastJet3_H
SelectorWorkerPy8(Py8ParticleFnPtr member_fn_ptr, T value)
bool pass(const PseudoJet &p) const
T(Pythia8::Particle::* Py8ParticleFnPtr)() const
the typedef helps with the notation for member function pointers