Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Jetscape::HardProcess Class Reference

#include <JETSCAPE/blob/main/src/framework/HardProcess.h>

+ Inheritance diagram for Jetscape::HardProcess:
+ Collaboration diagram for Jetscape::HardProcess:

Public Member Functions

 HardProcess ()
 
virtual ~HardProcess ()
 
virtual void Init ()
 
virtual void Exec ()
 
virtual void Clear ()
 
virtual void WriteTask (weak_ptr< JetScapeWriter > w)
 
virtual void CollectHeader (weak_ptr< JetScapeWriter > w)
 
int GetNHardPartons ()
 
shared_ptr< PartonGetPartonAt (int i)
 
vector< shared_ptr< Parton > > & GetPartonList ()
 
void AddParton (shared_ptr< Parton > p)
 
void GetHardPartonList (vector< shared_ptr< Parton >> &plist)
 
virtual double GetSigmaGen ()
 
virtual double GetSigmaErr ()
 
virtual double GetPtHat ()
 
virtual double GetEventWeight ()
 
void AddHadron (shared_ptr< Hadron > h)
 
void GetHadronList (vector< shared_ptr< Hadron >> &hlist)
 
vector< shared_ptr< Hadron > > & GetHadronList ()
 
int GetNHadrons ()
 
- Public Member Functions inherited from Jetscape::JetScapeModuleBase
 JetScapeModuleBase ()
 
 JetScapeModuleBase (string m_name)
 
virtual ~JetScapeModuleBase ()
 
void SetXMLMainFileName (string m_name)
 
string GetXMLMainFileName ()
 
void SetXMLUserFileName (string m_name)
 
string GetXMLUserFileName ()
 
shared_ptr< std::mt19937 > GetMt19937Generator ()
 
tinyxml2::XMLElementGetXMLElement (std::initializer_list< const char * > path, bool isRequired=true)
 
std::string GetXMLElementText (std::initializer_list< const char * > path, bool isRequired=true)
 
int GetXMLElementInt (std::initializer_list< const char * > path, bool isRequired=true)
 
double GetXMLElementDouble (std::initializer_list< const char * > path, bool isRequired=true)
 
- Public Member Functions inherited from Jetscape::JetScapeTask
 JetScapeTask ()
 
virtual ~JetScapeTask ()
 
virtual void Finish ()
 
virtual void ExecuteTasks ()
 
virtual void ExecuteTask ()
 
virtual void InitTask ()
 
virtual void InitTasks ()
 
virtual void ClearTasks ()
 
virtual void ClearTask ()
 
virtual void FinishTask ()
 
virtual void FinishTasks ()
 
virtual void WriteTasks (weak_ptr< JetScapeWriter > w)
 
virtual void CollectHeaders (weak_ptr< JetScapeWriter > w)
 
virtual void Add (shared_ptr< JetScapeTask > m_tasks)
 
virtual const int GetMyTaskNumber () const
 
const vector< shared_ptr
< JetScapeTask > > 
GetTaskList () const
 
shared_ptr< JetScapeTaskGetTaskAt (int i)
 
void EraseTaskLast ()
 
void EraseTaskAt (int i)
 
void ResizeTaskList (int i)
 
void ClearTaskList ()
 
int GetNumberOfTasks ()
 
const bool GetActive () const
 
void SetActive (bool m_active_exec)
 
void SetId (string m_id)
 
const string GetId () const
 
const shared_ptr
< JetScapeModuleMutex
GetMutex () const
 
void SetMutex (shared_ptr< JetScapeModuleMutex > m_mutex)
 
- Public Member Functions inherited from sigslot::has_slots< sigslot::multi_threaded_local >
 has_slots ()
 
 has_slots (const has_slots &hs)
 
void signal_connect (_signal_base< sigslot::multi_threaded_local > *sender)
 
void signal_disconnect (_signal_base< sigslot::multi_threaded_local > *sender)
 
virtual ~has_slots ()
 
void disconnect_all ()
 

Public Attributes

std::shared_ptr< InitialStateini
 
std::string printer
 

Private Attributes

vector< shared_ptr< Parton > > hp_list
 
vector< shared_ptr< Hadron > > hd_list
 

Additional Inherited Members

- Static Public Member Functions inherited from Jetscape::JetScapeModuleBase
static int GetCurrentEvent ()
 
static void IncrementCurrentEvent ()
 

Detailed Description

Definition at line 30 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 30 of file HardProcess.h

Constructor & Destructor Documentation

Jetscape::HardProcess::HardProcess ( )

Default constructor to create a Hard Process Physics task. Sets the task ID as "HardProcess".

Definition at line 30 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 30 of file HardProcess.cc

References SetId(), and VERBOSE.

+ Here is the call graph for this function:

Jetscape::HardProcess::~HardProcess ( )
virtual

Destructor for the Hard Process Physics task.

Definition at line 35 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 35 of file HardProcess.cc

References VERBOSE.

Member Function Documentation

void Jetscape::HardProcess::AddHadron ( shared_ptr< Hadron h)
inline

It adds a Hadron class pointer h into an existing vector of Hadron class, and increases the vector size by 1.

Parameters
hHadron class pointer for a hadron.

Definition at line 117 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 117 of file HardProcess.h

References hd_list.

void Jetscape::HardProcess::AddParton ( shared_ptr< Parton p)
inline

It adds a parton class pointer p into an existing vector of hard Parton class, and increases the vector size by 1.

Parameters
pParton class pointer for a hard parton.

Definition at line 86 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 86 of file HardProcess.h

References hp_list.

Referenced by PGun::Exec().

+ Here is the caller graph for this function:

void Jetscape::HardProcess::Clear ( void  )
virtual

Erases the hard partons stored in the vector hp_list of the hard process module. It can be overridden by the attached module.

Reimplemented from Jetscape::JetScapeModuleBase.

Definition at line 77 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 77 of file HardProcess.cc

References JSDEBUG, and VERBOSE.

void Jetscape::HardProcess::CollectHeader ( weak_ptr< JetScapeWriter w)
virtual

Collect header information for writer modules

Parameters
wis a pointer of type JetScapeWrite class.

Reimplemented from Jetscape::JetScapeTask.

Definition at line 110 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 110 of file HardProcess.cc

References f.

void Jetscape::HardProcess::Exec ( )
virtual

Calls JetScapeTask::ExecuteTasks() for recursive execution of tasks attached to HardProcess module. It can be overridden by the attached module.

Reimplemented from Jetscape::JetScapeModuleBase.

Reimplemented in epemGun, PythiaGun, and PGun.

Definition at line 70 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 70 of file HardProcess.cc

References JSINFO, and VERBOSE.

virtual double Jetscape::HardProcess::GetEventWeight ( )
inlinevirtual

Generated weight. This is in addition to sigmaGen, e.g. coming from dynamic oversampling. To be overwritten by implementations that have such information.

Reimplemented in epemGun, and PythiaGun.

Definition at line 112 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 112 of file HardProcess.h

void Jetscape::HardProcess::GetHadronList ( vector< shared_ptr< Hadron >> &  hlist)
inline

This function stores the vector of hadrons into a vector hlist.

Parameters
hlistan output vector of Hadron class.

Definition at line 123 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 123 of file HardProcess.h

References hd_list.

vector<shared_ptr<Hadron> >& Jetscape::HardProcess::GetHadronList ( )
inline
Returns
A vector of the Hadron class.

Definition at line 127 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 127 of file HardProcess.h

References hd_list.

void Jetscape::HardProcess::GetHardPartonList ( vector< shared_ptr< Parton >> &  plist)
inline

This function stores the vector of hard partons into a vector plist.

Parameters
plistA output vector of Parton class.

Definition at line 92 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 92 of file HardProcess.h

References hp_list.

int Jetscape::HardProcess::GetNHadrons ( )
inline
Returns
The number of hadrons.

Definition at line 132 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 132 of file HardProcess.h

References hd_list.

int Jetscape::HardProcess::GetNHardPartons ( )
inline
Returns
The number of hard partons.

Definition at line 72 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 72 of file HardProcess.h

References hp_list.

Referenced by PGun::Exec().

+ Here is the caller graph for this function:

shared_ptr<Parton> Jetscape::HardProcess::GetPartonAt ( int  i)
inline
Returns
A pointer to the Parton class for ith hard parton.
Parameters
iIndex of a vector of the hard parton.

Definition at line 77 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 77 of file HardProcess.h

References hp_list, and i.

vector<shared_ptr<Parton> >& Jetscape::HardProcess::GetPartonList ( )
inline
Returns
A vector of the Parton class. These parton classes correspond to the hard partons.

Definition at line 81 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 81 of file HardProcess.h

References hp_list.

virtual double Jetscape::HardProcess::GetPtHat ( )
inlinevirtual

Generated pt-hat To be overwritten by implementations that have such information.

Reimplemented in PythiaGun.

Definition at line 106 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 106 of file HardProcess.h

virtual double Jetscape::HardProcess::GetSigmaErr ( )
inlinevirtual

Generated cross section error. To be overwritten by implementations that have such information.

Reimplemented in epemGun, and PythiaGun.

Definition at line 101 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 101 of file HardProcess.h

virtual double Jetscape::HardProcess::GetSigmaGen ( )
inlinevirtual

Generated cross section. To be overwritten by implementations that have such information.

Reimplemented in epemGun, and PythiaGun.

Definition at line 97 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 97 of file HardProcess.h

void Jetscape::HardProcess::Init ( )
virtual

It reads the input parameters relevant to the hard scattering from the XML file under the name tag <Hard>. Uses JetScapeSingnalManager Instance to retrieve the Initial State Physics information. Calls InitTask(); This explicit call can be used for actual initialization of modules such as PythiaGun if attached as a polymorphic class. It also initializes the tasks within the current module.

See Also
Read about polymorphism in C++.

Reimplemented from Jetscape::JetScapeModuleBase.

Definition at line 42 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 42 of file HardProcess.cc

References BOLDYELLOW, Init(), JSINFO, JSWARN, utils::status, and VERBOSE.

+ Here is the call graph for this function:

void Jetscape::HardProcess::WriteTask ( weak_ptr< JetScapeWriter w)
virtual

It writes the output information obtained from the HardProcess Task into a file.

Parameters
wis a pointer of type JetScapeWrite class.

Reimplemented from Jetscape::JetScapeTask.

Definition at line 85 of file HardProcess.cc.

View newest version in sPHENIX GitHub at line 85 of file HardProcess.cc

References f, and VERBOSE.

Member Data Documentation

vector<shared_ptr<Hadron> > Jetscape::HardProcess::hd_list
private

Definition at line 142 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 142 of file HardProcess.h

Referenced by AddHadron(), GetHadronList(), and GetNHadrons().

vector<shared_ptr<Parton> > Jetscape::HardProcess::hp_list
private

Definition at line 139 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 139 of file HardProcess.h

Referenced by AddParton(), GetHardPartonList(), GetNHardPartons(), GetPartonAt(), and GetPartonList().

std::shared_ptr<InitialState> Jetscape::HardProcess::ini

A pointer of type InitialState class.

Definition at line 67 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 67 of file HardProcess.h

Referenced by PGun::Exec().

std::string Jetscape::HardProcess::printer

Definition at line 134 of file HardProcess.h.

View newest version in sPHENIX GitHub at line 134 of file HardProcess.h


The documentation for this class was generated from the following files: