herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
MatchboxFactoryMatcher.h
1// -*- C++ -*-
2//
3// MatchboxFactoryMatcher.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4// Copyright (C) 2002-2019 The Herwig Collaboration
5//
6// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8//
9#ifndef Herwig_MatchboxFactoryMatcher_H
10#define Herwig_MatchboxFactoryMatcher_H
11//
12// This is the declaration of the MatchboxFactoryMatcher class.
13//
14
15#include "ThePEG/PDT/MatcherBase.h"
16#include "Herwig/MatrixElement/Matchbox/MatchboxFactory.h"
17
18namespace Herwig {
19
20using namespace ThePEG;
21
33
34public:
35
40
41public:
42
46 virtual bool check(const ParticleData &) const;
47
53 virtual PMPtr pmclone() const;
54
55public:
56
64
70 void persistentInput(PersistentIStream & is, int version);
72
79 static void Init();
80
81protected:
82
89 virtual IBPtr clone() const;
90
95 virtual IBPtr fullclone() const;
97
98
99// If needed, insert declarations of virtual function defined in the
100// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
101
102
103protected:
104
112 virtual void doinit();
114
115private:
116
120 string theGroup;
121
125 set<long> theIds;
126
127private:
128
134
135};
136
137}
138
139#endif /* Herwig_MatchboxFactoryMatcher_H */
MatchboxFactoryMatcher matches particles according to MatchboxFatory particle groups.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
MatchboxFactoryMatcher & operator=(const MatchboxFactoryMatcher &)=delete
The assignment operator is private and must never be called.
string theGroup
The particle group to be matched.
virtual PMPtr pmclone() const
Specialized clone method for MatcherBase used by the Repository.
static void Init()
The standard Init function used to initialize the interfaces.
MatchboxFactoryMatcher()
The default constructor.
set< long > theIds
The set of particle ids to be matched.
virtual IBPtr clone() const
Make a simple clone of this object.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
virtual bool check(const ParticleData &) const
Check if a particle type meets the criteria.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
-*- C++ -*-
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< MatcherBase >::pointer PMPtr