Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Pythia8ForDecays.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // Abused from Geant4 version of Pythai6.hh from extended examples
6 
7 #ifndef Pythia8ForDecays_H
8 #define Pythia8ForDecays_H
9 
10 // For std::vector
11 #include <vector>
12 // G4 track function parameter
13 #include "G4Track.hh"
14 // For std::pair
15 #include <utility>
16 // For all the various Pythia8 classes used here
17 #include "Pythia8_i/Pythia8_i.h"
18 // For unique_ptr
19 #include <memory>
21 
22 class G4DynamicParticle;
23 class G4ParticleDefinition;
24 
26 {
27  public:
29  virtual ~Pythia8ForDecays() = default;
30 
32  void Py1ent(const G4Track&, std::vector<G4DynamicParticle*> &);
33 
34  private:
36  G4ParticleDefinition* GetParticleDefinition(const int) const;
37 
39  void fillParticle(const G4Track&, Pythia8::Event& event) const;
40 
42  std::pair<int,int> fromIdWithGluino( int idRHad, Pythia8::Rndm* rndmPtr) const;
43  std::pair<int,int> fromIdWithSquark( int idRHad) const;
44  bool isGluinoRHadron(int pdgId) const;
45 
47  std::unique_ptr<Pythia8::Pythia> m_pythia;
48 };
49 
50 #endif
51 
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
JiveXML::Event
struct Event_t Event
Definition: ONCRPCServer.h:65
Pythia8_i.h
Pythia8ForDecays
Definition: Pythia8ForDecays.h:26
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
Pythia8ForDecays::~Pythia8ForDecays
virtual ~Pythia8ForDecays()=default
Pythia8ForDecays::m_pythia
std::unique_ptr< Pythia8::Pythia > m_pythia
The instance of Pythia8 that will do the work.
Definition: Pythia8ForDecays.h:47
checker_macros.h
Define macros for attributes used to control the static checker.