thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
PDF
NoRemnants.h
1
// -*- C++ -*-
2
//
3
// NoRemnants.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
//
6
// ThePEG 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 ThePEG_NoRemnants_H
10
#define ThePEG_NoRemnants_H
11
// This is the declaration of the NoRemnants class.
12
13
#include "ThePEG/PDF/RemnantHandler.h"
14
// #include "NoRemnants.fh"
15
// #include "NoRemnants.xh"
16
17
namespace
ThePEG
{
18
29
class
NoRemnants
:
public
RemnantHandler
{
30
31
public
:
32
40
virtual
bool
canHandle
(
tcPDPtr
,
const
cPDVector
& partons)
const
{
41
return
partons.empty();
42
}
43
49
virtual
Lorentz5Momentum
generate
(
PartonBinInstance
& pb,
const
double
* r,
50
Energy2
scale,
51
const
LorentzMomentum
& p,
52
bool
fixedPartonMomentum =
false
)
const
;
53
68
virtual
Lorentz5Momentum
generate
(
PartonBinInstance
& pb,
const
double
* r,
69
Energy2
scale,
Energy2
shat,
70
const
LorentzMomentum
& parent,
71
bool
fixedPartonMomentum =
false
)
const
;
73
74
public
:
75
79
static
void
Init
();
80
81
protected
:
82
89
virtual
IBPtr
clone
()
const
;
90
95
virtual
IBPtr
fullclone
()
const
;
97
98
private
:
99
103
static
NoPIOClassDescription<NoRemnants>
initNoRemnants
;
104
108
NoRemnants
&
operator=
(
const
NoRemnants
&) =
delete
;
109
110
};
111
116
template
<>
117
struct
BaseClassTrait
<
NoRemnants
,1>:
public
ClassTraitsType
{
119
typedef
RemnantHandler
NthBase
;
120
};
121
124
template
<>
125
struct
ClassTraits<NoRemnants>:
public
ClassTraitsBase<NoRemnants> {
127
static
string
className
() {
return
"ThePEG::NoRemnants"
; }
128
};
129
132
}
133
134
#endif
/* ThePEG_NoRemnants_H */
ThePEG::Lorentz5Vector< Energy >
ThePEG::LorentzVector< Energy >
ThePEG::NoPIOClassDescription
A concreate implementation of ClassDescriptionBase describing a concrete class without persistent dat...
Definition:
ClassDescription.h:381
ThePEG::NoRemnants
NoRemnants inherits from RemnantHandler but can only handle particles without sub-structure with the ...
Definition:
NoRemnants.h:29
ThePEG::NoRemnants::Init
static void Init()
Standard Init function used to initialize the interface.
ThePEG::NoRemnants::generate
virtual Lorentz5Momentum generate(PartonBinInstance &pb, const double *r, Energy2 scale, Energy2 shat, const LorentzMomentum &parent, bool fixedPartonMomentum=false) const
Generate the momentum of the extracted parton with the parent momentum given by the last argument.
ThePEG::NoRemnants::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::NoRemnants::canHandle
virtual bool canHandle(tcPDPtr, const cPDVector &partons) const
Return true if this remnant handler can handle extracting all specified partons.
Definition:
NoRemnants.h:40
ThePEG::NoRemnants::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::NoRemnants::operator=
NoRemnants & operator=(const NoRemnants &)=delete
Private and non-existent assignment operator.
ThePEG::NoRemnants::initNoRemnants
static NoPIOClassDescription< NoRemnants > initNoRemnants
Describe a concrete class without persistent data.
Definition:
NoRemnants.h:103
ThePEG::NoRemnants::generate
virtual Lorentz5Momentum generate(PartonBinInstance &pb, const double *r, Energy2 scale, const LorentzMomentum &p, bool fixedPartonMomentum=false) const
Generate Remnants.
ThePEG::PartonBinInstance
PartonBinInstance is used to store information about the generation of a given parton extraction for ...
Definition:
PartonBinInstance.h:28
ThePEG::Pointer::RCPtr
RCPtr is a reference counted (smart) pointer.
Definition:
RCPtr.h:60
ThePEG::Pointer::TransientConstRCPtr
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
Definition:
RCPtr.h:696
ThePEG::Qty< 0, 2, 0 >
ThePEG::RemnantHandler
RemnantHandler is an abstract base class for implementing classes used to generate remnants when part...
Definition:
RemnantHandler.h:31
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::cPDVector
vector< cPDPtr > cPDVector
A vector of pointers to const ParticleData objects.
Definition:
Containers.h:36
ThePEG::BaseClassTrait
BaseClassTraits describes the base classes of the templated class.
Definition:
ClassTraits.h:156
ThePEG::BaseClassTrait::NthBase
int NthBase
The type of the BaseN'th base class (int means there are no further base classes).
Definition:
ClassTraits.h:161
ThePEG::ClassTraitsBase::className
static string className()
Return the name of class T.
Definition:
ClassTraits.h:66
ThePEG::ClassTraitsType
ClassTraitsType is an empty, non-polymorphic, base class.
Definition:
ClassTraits.h:30
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6