EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4HcalSubsystem Class Reference

#include <fun4all_coresoftware/blob/master/simulation/g4simulation/g4detectors/PHG4HcalSubsystem.h>

+ Inheritance diagram for PHG4HcalSubsystem:
+ Collaboration diagram for PHG4HcalSubsystem:

Public Member Functions

 PHG4HcalSubsystem (const std::string &name="HCALCYLINDER", const int layer=0)
 constructor
 
 ~PHG4HcalSubsystem (void) override
 destructor
 
int InitRun (PHCompositeNode *) override
 init
 
int process_event (PHCompositeNode *) override
 event processing
 
PHG4DetectorGetDetector (void) const override
 accessors (reimplemented)
 
PHG4SteppingActionGetSteppingAction (void) const override
 return pointer to this subsystem stepping action
 
void SetRadius (const G4double dbl)
 
void SetLength (const G4double dbl)
 
void SetLengthViaRapidityCoverage (const G4bool bl)
 
void SetPosition (const G4double x, const G4double y, const G4double z)
 
void SetTilt (const double tilt)
 
void SetTiltViaNcross (const int ncross)
 
void SetScintWidth (const double wid)
 
void SetNumScint (const int num)
 
void SetScintPhi0 (const G4double phi0)
 
void SetThickness (const G4double dbl)
 
void SetMaterial (const std::string &mat)
 
void SetActive (const int i=1)
 
void SetAbsorberActive (const int i=1)
 
void SuperDetector (const std::string &name)
 
const std::string SuperDetector ()
 
void SetLightCorrection (float inner_radius, float inner_corr, float outer_radius, float outer_corr)
 
void SetLightScintModel (const bool b=true)
 
void Print (const std::string &what="ALL") const override
 
- Public Member Functions inherited from PHG4Subsystem
 PHG4Subsystem (const std::string &name="Generic Subsystem")
 constructor
 
 ~PHG4Subsystem (void) override
 destructor
 
virtual int process_after_geant (PHCompositeNode *)
 event processing
 
virtual PHG4EventActionGetEventAction (void) const
 return pointer to this subsystem event action
 
virtual PHG4TrackingActionGetTrackingAction (void) const
 return pointer to this subsystem stepping action
 
virtual PHG4DisplayActionGetDisplayAction () const
 return pointer to this subsystem display setting
 
virtual PHG4StackingActionGetStackingAction () const
 
void OverlapCheck (const bool chk=true)
 
bool CheckOverlap () const
 
void SetMotherSubsystem (PHG4Subsystem *subsys)
 
PHG4SubsystemGetMotherSubsystem () const
 
void SetLogicalVolume (G4LogicalVolume *vol)
 
G4LogicalVolume * GetLogicalVolume () const
 
virtual bool CanBeMotherSubsystem () const
 
virtual void AddProcesses (G4ParticleDefinition *)
 
virtual void DefineMaterials ()
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int End (PHCompositeNode *)
 Called at the end of all processing.
 
virtual int EndRun (const int)
 Called at the end of each run.
 
virtual int Init (PHCompositeNode *)
 
virtual int Reset (PHCompositeNode *)
 Reset.
 
virtual int ResetEvent (PHCompositeNode *)
 Clean up after each event.
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Private Attributes

PHG4HcalDetectordetector_
 detector geometry
 
PHG4HcalSteppingActionsteppingAction_
 particle tracking "stepping" action
 
G4double radius
 
G4double length
 
G4double xpos
 
G4double ypos
 
G4double zpos
 
G4bool lengthViaRapidityCoverage
 
G4double TrackerThickness
 
G4String material
 
G4double _sciTilt
 
G4double _sciWidth
 
G4int _sciNum
 
G4double _sciPhi0
 
int active
 
int absorberactive
 
int layer
 
std::string detector_type
 
std::string superdetector
 
bool light_scint_model_
 
bool light_balance_
 
float light_balance_inner_radius_
 
float light_balance_inner_corr_
 
float light_balance_outer_radius_
 
float light_balance_outer_corr_
 

Additional Inherited Members

- Public Types inherited from Fun4AllBase
enum  enu_Verbosity {
  VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3,
  VERBOSITY_A_LOT = 4, VERBOSITY_MAX = INT_MAX - 10
}
 
- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

Definition at line 19 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 19 of file PHG4HcalSubsystem.h

Constructor & Destructor Documentation

PHG4HcalSubsystem::PHG4HcalSubsystem ( const std::string &  name = "HCALCYLINDER",
const int  layer = 0 
)

constructor

Definition at line 31 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 31 of file PHG4HcalSubsystem.cc

References Fun4AllBase::Name().

+ Here is the call graph for this function:

PHG4HcalSubsystem::~PHG4HcalSubsystem ( void  )
inlineoverride

destructor

Definition at line 26 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 26 of file PHG4HcalSubsystem.h

Member Function Documentation

PHG4Detector * PHG4HcalSubsystem::GetDetector ( void  ) const
overridevirtual

accessors (reimplemented)

Reimplemented from PHG4Subsystem.

Definition at line 155 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 155 of file PHG4HcalSubsystem.cc

References detector_.

PHG4SteppingAction * PHG4HcalSubsystem::GetSteppingAction ( void  ) const
overridevirtual

return pointer to this subsystem stepping action

Reimplemented from PHG4Subsystem.

Definition at line 161 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 161 of file PHG4HcalSubsystem.cc

References steppingAction_.

int PHG4HcalSubsystem::InitRun ( PHCompositeNode topNode)
overridevirtual

init

creates the detector_ object and place it on the node tree, under "DETECTORS" node (or whatever) reates the stepping action and place it on the node tree, under "ACTIONS" node creates relevant hit nodes that will be populated by the stepping action and stored in the output DST

Reimplemented from SubsysReco.

Definition at line 66 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 66 of file PHG4HcalSubsystem.cc

References _sciNum, _sciPhi0, _sciTilt, _sciWidth, absorberactive, active, PHG4HitContainer::AddLayer(), PHCompositeNode::addNode(), PHG4Subsystem::CheckOverlap(), detector_, detector_type, PHNodeIterator::findFirst(), PHG4Utils::GetLengthForRapidityCoverage(), layer, length, lengthViaRapidityCoverage, light_balance_, light_balance_inner_corr_, light_balance_inner_radius_, light_balance_outer_corr_, light_balance_outer_radius_, light_scint_model_, material, Fun4AllBase::Name(), PHG4Detector::OverlapCheck(), radius, PHG4HcalSteppingAction::set_zmax(), PHG4HcalSteppingAction::set_zmin(), PHG4HcalDetector::SetAbsorberActive(), PHG4HcalDetector::SetActive(), PHG4HcalDetector::SetLength(), PHG4SteppingAction::SetLightCorrection(), PHG4HcalSteppingAction::SetLightScintModel(), PHG4HcalDetector::SetMaterial(), PHG4HcalDetector::SetNumScint(), PHG4HcalDetector::SetPosition(), PHG4HcalDetector::SetRadius(), PHG4HcalDetector::SetScintPhi0(), PHG4HcalDetector::SetScintWidth(), PHG4HcalDetector::SetThickness(), PHG4HcalDetector::SetTilt(), steppingAction_, PHG4HcalDetector::SuperDetector(), superdetector, TrackerThickness, xpos, ypos, and zpos.

+ Here is the call graph for this function:

void PHG4HcalSubsystem::Print ( const std::string &  what = "ALL") const
overridevirtual

Print out some info about this module.

Parameters
whatcan be used to specify what to print exactly.

Reimplemented from SubsysReco.

Definition at line 166 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 166 of file PHG4HcalSubsystem.cc

References detector_, and PHG4HcalDetector::Print().

+ Here is the call graph for this function:

int PHG4HcalSubsystem::process_event ( PHCompositeNode topNode)
overridevirtual

event processing

get all relevant nodes from top nodes (namely hit list) and pass that to the stepping action

Reimplemented from SubsysReco.

Definition at line 143 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 143 of file PHG4HcalSubsystem.cc

References PHG4HcalSteppingAction::SetInterfacePointers(), and steppingAction_.

+ Here is the call graph for this function:

void PHG4HcalSubsystem::SetAbsorberActive ( const int  i = 1)
inline

Definition at line 66 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 66 of file PHG4HcalSubsystem.h

References absorberactive.

void PHG4HcalSubsystem::SetActive ( const int  i = 1)
inline

Definition at line 65 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 65 of file PHG4HcalSubsystem.h

References active.

void PHG4HcalSubsystem::SetLength ( const G4double  dbl)
inline

Definition at line 50 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 50 of file PHG4HcalSubsystem.h

References length.

void PHG4HcalSubsystem::SetLengthViaRapidityCoverage ( const G4bool  bl)
inline

Definition at line 51 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 51 of file PHG4HcalSubsystem.h

References lengthViaRapidityCoverage.

void PHG4HcalSubsystem::SetLightCorrection ( float  inner_radius,
float  inner_corr,
float  outer_radius,
float  outer_corr 
)
inline
void PHG4HcalSubsystem::SetLightScintModel ( const bool  b = true)
inline

Definition at line 79 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 79 of file PHG4HcalSubsystem.h

References light_scint_model_.

void PHG4HcalSubsystem::SetMaterial ( const std::string &  mat)
inline

Definition at line 64 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 64 of file PHG4HcalSubsystem.h

References material.

void PHG4HcalSubsystem::SetNumScint ( const int  num)
inline

Definition at line 61 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 61 of file PHG4HcalSubsystem.h

References _sciNum, and num.

void PHG4HcalSubsystem::SetPosition ( const G4double  x,
const G4double  y,
const G4double  z 
)
inline

Definition at line 52 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 52 of file PHG4HcalSubsystem.h

References x, xpos, y, ypos, z, and zpos.

void PHG4HcalSubsystem::SetRadius ( const G4double  dbl)
inline

Definition at line 49 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 49 of file PHG4HcalSubsystem.h

References radius.

void PHG4HcalSubsystem::SetScintPhi0 ( const G4double  phi0)
inline

Definition at line 62 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 62 of file PHG4HcalSubsystem.h

References _sciPhi0.

void PHG4HcalSubsystem::SetScintWidth ( const double  wid)
inline

Definition at line 60 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 60 of file PHG4HcalSubsystem.h

References _sciWidth.

void PHG4HcalSubsystem::SetThickness ( const G4double  dbl)
inline

Definition at line 63 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 63 of file PHG4HcalSubsystem.h

References TrackerThickness.

void PHG4HcalSubsystem::SetTilt ( const double  tilt)
inline

Definition at line 58 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 58 of file PHG4HcalSubsystem.h

References _sciTilt.

void PHG4HcalSubsystem::SetTiltViaNcross ( const int  ncross)

Definition at line 172 of file PHG4HcalSubsystem.cc.

View newest version in sPHENIX GitHub at line 172 of file PHG4HcalSubsystem.cc

References _sciNum, _sciTilt, starlightConstants::alpha, c, cos(), exit(), M_PI, Fun4AllBase::Name(), radius, sign(), and TrackerThickness.

+ Here is the call graph for this function:

void PHG4HcalSubsystem::SuperDetector ( const std::string &  name)
inline

Definition at line 67 of file PHG4HcalSubsystem.h.

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

References name, and superdetector.

const std::string PHG4HcalSubsystem::SuperDetector ( )
inline

Definition at line 68 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 68 of file PHG4HcalSubsystem.h

References superdetector.

Member Data Documentation

G4int PHG4HcalSubsystem::_sciNum
private

Definition at line 102 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 102 of file PHG4HcalSubsystem.h

Referenced by InitRun(), SetNumScint(), and SetTiltViaNcross().

G4double PHG4HcalSubsystem::_sciPhi0
private

Definition at line 103 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 103 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetScintPhi0().

G4double PHG4HcalSubsystem::_sciTilt
private

Definition at line 100 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 100 of file PHG4HcalSubsystem.h

Referenced by InitRun(), SetTilt(), and SetTiltViaNcross().

G4double PHG4HcalSubsystem::_sciWidth
private

Definition at line 101 of file PHG4HcalSubsystem.h.

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

Referenced by InitRun(), and SetScintWidth().

int PHG4HcalSubsystem::absorberactive
private

Definition at line 105 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 105 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetAbsorberActive().

int PHG4HcalSubsystem::active
private

Definition at line 104 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 104 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetActive().

PHG4HcalDetector* PHG4HcalSubsystem::detector_
private

detector geometry

defives from PHG4Detector

Definition at line 89 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 89 of file PHG4HcalSubsystem.h

Referenced by GetDetector(), InitRun(), and Print().

std::string PHG4HcalSubsystem::detector_type
private

Definition at line 107 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 107 of file PHG4HcalSubsystem.h

Referenced by InitRun().

int PHG4HcalSubsystem::layer
private

Definition at line 106 of file PHG4HcalSubsystem.h.

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

Referenced by InitRun().

G4double PHG4HcalSubsystem::length
private

Definition at line 95 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 95 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetLength().

G4bool PHG4HcalSubsystem::lengthViaRapidityCoverage
private

Definition at line 97 of file PHG4HcalSubsystem.h.

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

Referenced by InitRun(), and SetLengthViaRapidityCoverage().

bool PHG4HcalSubsystem::light_balance_
private

Definition at line 111 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 111 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetLightCorrection().

float PHG4HcalSubsystem::light_balance_inner_corr_
private

Definition at line 113 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 113 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetLightCorrection().

float PHG4HcalSubsystem::light_balance_inner_radius_
private

Definition at line 112 of file PHG4HcalSubsystem.h.

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

Referenced by InitRun(), and SetLightCorrection().

float PHG4HcalSubsystem::light_balance_outer_corr_
private

Definition at line 115 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 115 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetLightCorrection().

float PHG4HcalSubsystem::light_balance_outer_radius_
private

Definition at line 114 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 114 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetLightCorrection().

bool PHG4HcalSubsystem::light_scint_model_
private

Definition at line 110 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 110 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetLightScintModel().

G4String PHG4HcalSubsystem::material
private

Definition at line 99 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 99 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetMaterial().

G4double PHG4HcalSubsystem::radius
private

Definition at line 94 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 94 of file PHG4HcalSubsystem.h

Referenced by InitRun(), SetRadius(), and SetTiltViaNcross().

PHG4HcalSteppingAction* PHG4HcalSubsystem::steppingAction_
private

particle tracking "stepping" action

derives from PHG4SteppingActions

Definition at line 93 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 93 of file PHG4HcalSubsystem.h

Referenced by GetSteppingAction(), InitRun(), and process_event().

std::string PHG4HcalSubsystem::superdetector
private

Definition at line 108 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 108 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SuperDetector().

G4double PHG4HcalSubsystem::TrackerThickness
private

Definition at line 98 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 98 of file PHG4HcalSubsystem.h

Referenced by InitRun(), SetThickness(), and SetTiltViaNcross().

G4double PHG4HcalSubsystem::xpos
private

Definition at line 96 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 96 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetPosition().

G4double PHG4HcalSubsystem::ypos
private

Definition at line 96 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 96 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetPosition().

G4double PHG4HcalSubsystem::zpos
private

Definition at line 96 of file PHG4HcalSubsystem.h.

View newest version in sPHENIX GitHub at line 96 of file PHG4HcalSubsystem.h

Referenced by InitRun(), and SetPosition().


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