Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
HadronizationManager.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file HadronizationManager.h
1
/*******************************************************************************
2
* Copyright (c) The JETSCAPE Collaboration, 2018
3
*
4
* Modular, task-based framework for simulating all aspects of heavy-ion collisions
5
*
6
* For the list of contributors see AUTHORS.
7
*
8
* Report issues at https://github.com/JETSCAPE/JETSCAPE/issues
9
*
10
* or via email to bugs.jetscape@gmail.com
11
*
12
* Distributed under the GNU General Public License 3.0 (GPLv3 or later).
13
* See COPYING for details.
14
******************************************************************************/
15
16
#ifndef HADRONIZATIONMANAGER_H
17
#define HADRONIZATIONMANAGER_H
18
19
#include "
JetScapeTask.h
"
20
#include "
JetClass.h
"
21
#include "
sigslot.h
"
22
23
#include "
Hadronization.h
"
24
25
#include <vector>
26
27
namespace
Jetscape {
28
29
// : public JetScapeTask,
30
class
HadronizationManager
31
:
public
JetScapeModuleBase
,
32
public
std::enable_shared_from_this<HadronizationManager> {
33
34
public
:
35
HadronizationManager
();
36
virtual
~HadronizationManager
();
37
38
virtual
void
Init
();
39
virtual
void
Exec
();
40
virtual
void
Clear
();
41
virtual
void
WriteTask
(weak_ptr<JetScapeWriter> w);
42
43
int
GetNumSignals
();
44
45
void
CreateSignalSlots
();
46
47
//get Hadrons from Hadronization submodules
48
void
GetHadrons
(vector<
shared_ptr<Hadron>
>&
signal
);
49
50
// deletes the hadrons from the different hadronization modules
51
// this is used in the case of hadronization hadrons in the afterburner
52
// otherwise these hadrons are printed to file and the same hadrons will be
53
// modified in the transport and printed again
54
void
DeleteHadrons
();
55
// this function removes all positive hadrons, the negative ones are not deleted
56
// needed, when positive hadrons are given to the afterburner
57
void
DeleteRealHadrons
();
58
59
sigslot::signal1<vector<shared_ptr<Hadron>
> &>
GetHadronList
;
//get Hadrons from HardProcess NOT Hadronization submodules
60
61
sigslot::signal1<vector<vector<shared_ptr<Parton>
>> &>
GetFinalPartonList
;
62
63
void
SetGetFinalPartonListConnected
(
bool
m_GetFinalPartonListConnected) {
64
GetFinalPartonListConnected
= m_GetFinalPartonListConnected;
65
}
66
const
bool
GetGetFinalPartonListConnected
() {
67
return
GetFinalPartonListConnected
;
68
}
69
70
void
SetGetHadronListConnected
(
bool
m_GetHadronListConnected) {
71
GetHadronListConnected
= m_GetHadronListConnected;
72
}
73
const
bool
GetGetHadronListConnected
() {
return
GetHadronListConnected
; }
74
75
private
:
76
bool
GetFinalPartonListConnected
;
77
bool
GetHadronListConnected
;
78
vector<vector<shared_ptr<Parton>>>
hd
;
79
vector<shared_ptr<Hadron>>
hadrons
;
80
};
81
82
}
// end namespace Jetscape
83
84
#endif
JETSCAPE
blob
main
src
framework
HadronizationManager.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:24
using
1.8.2 with
sPHENIX GitHub integration