thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
Pointers.h
Go to the documentation of this file.
1// -*- C++ -*-
2//
3// Pointers.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_Pointers_H
10#define ThePEG_Pointers_H
11
32
33namespace ThePEG {
34
36#define ThePEG_DECLARE_TEMPLATE_POINTERS(full, abbrev) \
37 \
38 typedef typename ThePEG::Ptr<full>::pointer abbrev; \
39 \
40 typedef typename ThePEG::Ptr<full>::const_pointer c ## abbrev; \
41 \
42 typedef typename ThePEG::Ptr<full>::transient_pointer t ## abbrev; \
43 \
44 typedef typename ThePEG::Ptr<full>::transient_const_pointer tc ## abbrev
45
47#define ThePEG_DECLARE_POINTERS(full, abbrev) \
48 \
49 typedef ThePEG::Ptr<full>::pointer abbrev; \
50 \
51 typedef ThePEG::Ptr<full>::const_pointer c ## abbrev; \
52 \
53 typedef ThePEG::Ptr<full>::transient_pointer t ## abbrev; \
54 \
55 typedef ThePEG::Ptr<full>::transient_const_pointer tc ## abbrev
56
58#define ThePEG_DECLARE_CLASS_POINTERS(full, abbrev) \
59 class full; \
60 ThePEG_DECLARE_POINTERS(full, abbrev)
61
98
99// ThePEG_DECLARE_CLASS_POINTERS(,);
100
101}
102
103// #include "Pointers.icc"
104#ifndef ThePEG_TEMPLATES_IN_CC_FILE
105// #include "Pointers.tcc"
106#endif
107
108#endif /* ThePEG_Pointers_H */
#define ThePEG_DECLARE_CLASS_POINTERS(full, abbrev)
This macro helps us to declare pointers and stuff to standard classes.
Definition: Pointers.h:58
#define ThePEG_DECLARE_POINTERS(full, abbrev)
This macro helps us to declare pointers and stuff to standard classes.
Definition: Pointers.h:47
This is the main config header file for ThePEG.
The AnalysisHandler is the base class of all analysis objects which may be handled by the FullEventGe...
The CascadeHandler is the base class of all handlers implementing perturbative partonic cascade model...
This is the decalaration of the Collision class.
Definition: Collision.h:34
ColourBase is the base class to be used to supply a Particle with information about its colour state.
Definition: ColourBase.h:32
The ColourLine class represents colour lines connecting Particles.
Definition: ColourLine.h:36
The DecayHandler is the base class of all handlers implementing the administration of decays of unsta...
Definition: DecayHandler.h:31
The DecayMode class describes a decay channel of a particle.
Definition: DecayMode.h:87
Decayer is an abstract base class to specify objects modelling the decay of a particle.
Definition: Decayer.h:29
The EventGenerator class manages a whole event generator run.
The EventHandler is the base class used to implement event handlers in ThePEG.
Definition: EventHandler.h:63
EventInfoBase is a base class for information objects.
Definition: EventInfoBase.h:27
An object of the EventManipulator class may be assigned to a FullEventGenerator object.
The Event class contains all Particles produced in the generation of an event.
Definition: Event.h:37
The HadronizationHandler is the base class of all handlers implementing models for hadronization of c...
Hint is a base class to be used to pass information between StepHandler s, which cannot be convayed t...
Definition: Hint.h:48
InterfacedBase is the base class of all Interfaced objects to be handled by the BaseRepository class.
The Interfaced class is derived from the InterfacedBase class adding a couple of things particular to...
Definition: Interfaced.h:38
The LuminosityFunction describes the momentum distribution of the incoming beams in an experiment.
MatcherBase is an abstract base class to be used for objects representing groups of ParticleData obje...
Definition: MatcherBase.h:29
The MultipleInteractionHandler is the base class of all handlers implementing models for multiple int...
PDFBase is the base class for implementing parton density functions for particles with sub-structure.
Definition: PDFBase.h:40
ParticleData inherits from InterfacedBase and represents the properties of a particle type.
Definition: ParticleData.h:36
The Particle class is used to describe an instance of a particle.
Definition: Particle.h:83
The PartonExtractor is a base class defining the interface to objects responsible for extracting part...
RCPtr is a reference counted (smart) pointer.
Definition: RCPtr.h:60
RandomGenerator is an interface to the CLHEP::RandomEngine classes.
RemnantHandler is an abstract base class for implementing classes used to generate remnants when part...
The ReweightBase class is the base class of all objects representing external biases to matrix elemen...
Definition: ReweightBase.h:39
The SpinInfo is the base class for the spin information for the spin correlation algorithm.
Definition: SpinInfo.h:58
StandardModelBase is used to handle standard model parameters in an EventGenerator.
StepHandler is the base class for implementing any model for a step in the event generation chain.
Definition: StepHandler.h:41
The Step class contains information of all particles present after certain step in the event generati...
Definition: Step.h:34
The Strategy class represents a general strategy to be assigned to an EventGenerator.
Definition: Strategy.h:41
A SubProcess object represents a hard sub-process in a collision.
Definition: SubProcess.h:33
The XComb class stores all information about the generation of a hard sub-proces for a given pair of ...
Definition: XComb.h:43
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
Define the base class from which all (polymorphic) classes in ThePEG are derived.
Definition: ThePEG.h:54