Pythia6Hadro2019.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::Pythia6Hadro2019
5 
6 \brief Provides access to the PYTHIA hadronization models. \n
7  Is a concrete implementation of the EventRecordVisitorI interface.
8 
9 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
10  University of Liverpool & STFC Rutherford Appleton Laboratory
11 
12 \created August 17, 2004
13 
14 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
15  For the full text of the license visit http://copyright.genie-mc.org
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _PYTHIA6_HADRONIZATION_H_
20 #define _PYTHIA6_HADRONIZATION_H_
21 
22 #define __GENIE_PYTHIA6_ENABLED__
23 
24 #include "Framework/Conventions/GBuild.h"
27 
28 #ifdef __GENIE_PYTHIA6_ENABLED__
29 #include <TPythia6.h>
30 #endif
31 
32 namespace genie {
33 
34 class GHepParticle;
35 
37 
38 public:
40  Pythia6Hadro2019(string config);
41  virtual ~Pythia6Hadro2019();
42 
43  // Implement the EventRecordVisitorI interface
44  void ProcessEventRecord(GHepRecord * event) const;
45 
46  // Overload the Algorithm::Configure() methods to load private data
47  // members from configuration options
48  void Configure(const Registry & config);
49  void Configure(string config);
50 
51 private:
52 
53  bool Hadronize (GHepRecord* event) const;
54 
55  void CopyOriginalDecayFlags (void) const;
56  void SetDesiredDecayFlags (void) const;
57  void RestoreOriginalDecayFlags (void) const;
58 
59  void LoadConfig (void);
60  void Initialize (void);
61 
62 #ifdef __GENIE_PYTHIA6_ENABLED__
63  mutable TPythia6 * fPythia; ///< PYTHIA6 wrapper class
64 #endif
65 };
66 
67 } // genie namespace
68 
69 #endif // _PYTHIA6_HADRONIZATION_H_
void CopyOriginalDecayFlags(void) const
void ProcessEventRecord(GHepRecord *event) const
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
bool Hadronize(GHepRecord *event) const
void RestoreOriginalDecayFlags(void) const
TPythia6 * fPythia
PYTHIA6 wrapper class.
static Config * config
Definition: config.cpp:1054
Base class for the Pythia (6 and 8) hadronization modules in GENIE. In particular, the base class provides common checks and basic assignments of quark/diquark codes for a no frills interface to Pythia hadronization routines.
void Configure(const Registry &config)
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
Provides access to the PYTHIA hadronization models. Is a concrete implementation of the EventRecord...
void SetDesiredDecayFlags(void) const
GENIE&#39;s GHEP MC event record.
Definition: GHepRecord.h:45
Event finding and building.