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

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

+ Inheritance diagram for BeamLineMagnetSubsystem:
+ Collaboration diagram for BeamLineMagnetSubsystem:

Public Member Functions

 BeamLineMagnetSubsystem (const std::string &name="CYLINDER", const int layer=0)
 constructor
 
 ~BeamLineMagnetSubsystem () override
 destructor
 
int InitRunSubsystem (PHCompositeNode *) override
 init runwise stuff
 
int process_event (PHCompositeNode *) override
 event processing
 
void Print (const std::string &what="ALL") const override
 Print info (from SubsysReco)
 
PHG4DetectorGetDetector (void) const override
 accessors (reimplemented)
 
PHG4SteppingActionGetSteppingAction (void) const override
 return pointer to this subsystem stepping action
 
PHG4DisplayActionGetDisplayAction () const override
 return pointer to this subsystem display setting
 
bool CanBeMotherSubsystem () const override
 
- Public Member Functions inherited from PHG4DetectorSubsystem
 ~PHG4DetectorSubsystem () override
 
int Init (PHCompositeNode *) final
 
int InitRun (PHCompositeNode *) final
 
virtual int InitSubsystem (PHCompositeNode *)
 
void OverlapCheck (const bool chk=true)
 
bool CheckOverlap () const
 
PHParametersGetParams () const
 
void set_double_param (const std::string &name, const double dval)
 
double get_double_param (const std::string &name) const
 
void set_int_param (const std::string &name, const int ival)
 
int get_int_param (const std::string &name) const
 
void set_string_param (const std::string &name, const std::string &sval)
 
std::string get_string_param (const std::string &name) const
 
void UseDB (const int i=1)
 
int ReadDB () const
 
FILE_TYPE get_filetype () const
 
void UseCalibFiles (const FILE_TYPE ftyp)
 
int SaveParamsToDB ()
 
int ReadParamsFromDB (const std::string &name, const int issuper)
 
int SaveParamsToFile (const FILE_TYPE ftyp)
 
int ReadParamsFromFile (const std::string &name, const FILE_TYPE ftyp, const int issuper)
 
void SetCalibrationFileDir (const std::string &calibdir)
 
void UpdateParametersWithMacro ()
 
void SetActive (const int i=1)
 
void SetAbsorberActive (const int i=1)
 
void SetAbsorberTruth (const int i=1)
 
void BlackHole (const int i=1)
 
void SetSupportActive (const int i=1)
 
void SuperDetector (const std::string &name)
 
const std::string SuperDetector () const
 
int GetLayer () const
 
- 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 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 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 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 Member Functions

void SetDefaultParameters () override
 

Private Attributes

BeamLineMagnetDetectorm_Detector = nullptr
 detector geometry
 
PHG4SteppingActionm_SteppingAction = nullptr
 particle tracking "stepping" action
 
PHG4DisplayActionm_DisplayAction = nullptr
 display attribute setting
 
std::string m_HitNodeName
 
std::string m_AbsorberNodeName
 

Additional Inherited Members

- Public Types inherited from PHG4DetectorSubsystem
enum  FILE_TYPE { none = 0, xml = 1, root = 2 }
 
- Protected Member Functions inherited from PHG4DetectorSubsystem
 PHG4DetectorSubsystem (const std::string &name="GenericSubsystem", const int lyr=0)
 
void InitializeParameters ()
 
void set_default_double_param (const std::string &name, const double dval)
 
void set_default_int_param (const std::string &name, const int ival)
 
void set_default_string_param (const std::string &name, const std::string &sval)
 
int BeginRunExecuted () const
 

Detailed Description

Definition at line 16 of file BeamLineMagnetSubsystem.h.

View newest version in sPHENIX GitHub at line 16 of file BeamLineMagnetSubsystem.h

Constructor & Destructor Documentation

BeamLineMagnetSubsystem::BeamLineMagnetSubsystem ( const std::string &  name = "CYLINDER",
const int  layer = 0 
)

constructor

Definition at line 27 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 27 of file BeamLineMagnetSubsystem.cc

References PHG4DetectorSubsystem::InitializeParameters().

+ Here is the call graph for this function:

BeamLineMagnetSubsystem::~BeamLineMagnetSubsystem ( )
override

destructor

Definition at line 34 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 34 of file BeamLineMagnetSubsystem.cc

References m_DisplayAction.

Member Function Documentation

bool BeamLineMagnetSubsystem::CanBeMotherSubsystem ( ) const
inlineoverridevirtual

Reimplemented from PHG4Subsystem.

Definition at line 51 of file BeamLineMagnetSubsystem.h.

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

PHG4Detector * BeamLineMagnetSubsystem::GetDetector ( void  ) const
overridevirtual

accessors (reimplemented)

Reimplemented from PHG4Subsystem.

Definition at line 115 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 115 of file BeamLineMagnetSubsystem.cc

References m_Detector.

PHG4DisplayAction* BeamLineMagnetSubsystem::GetDisplayAction ( ) const
inlineoverridevirtual

return pointer to this subsystem display setting

Reimplemented from PHG4Subsystem.

Definition at line 46 of file BeamLineMagnetSubsystem.h.

View newest version in sPHENIX GitHub at line 46 of file BeamLineMagnetSubsystem.h

References m_DisplayAction.

PHG4SteppingAction* BeamLineMagnetSubsystem::GetSteppingAction ( void  ) const
inlineoverridevirtual

return pointer to this subsystem stepping action

Reimplemented from PHG4Subsystem.

Definition at line 45 of file BeamLineMagnetSubsystem.h.

View newest version in sPHENIX GitHub at line 45 of file BeamLineMagnetSubsystem.h

References m_SteppingAction.

int BeamLineMagnetSubsystem::InitRunSubsystem ( PHCompositeNode topNode)
overridevirtual

init runwise stuff

creates the m_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 PHG4DetectorSubsystem.

Definition at line 40 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 40 of file BeamLineMagnetSubsystem.cc

References PHCompositeNode::addNode(), PHG4DetectorSubsystem::CheckOverlap(), PHNodeIterator::findFirst(), PHG4DetectorSubsystem::get_int_param(), PHG4DetectorSubsystem::GetLayer(), PHG4DetectorSubsystem::GetParams(), m_AbsorberNodeName, m_Detector, m_DisplayAction, m_HitNodeName, m_SteppingAction, Fun4AllBase::Name(), PHG4Detector::OverlapCheck(), PHG4SteppingAction::SetHitNodeName(), BeamLineMagnetDetector::SuperDetector(), PHG4DetectorSubsystem::SuperDetector(), PHG4Detector::topNode(), PHG4Detector::Verbosity(), and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

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

Print info (from SubsysReco)

Reimplemented from SubsysReco.

Definition at line 148 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 148 of file BeamLineMagnetSubsystem.cc

References PHG4DetectorSubsystem::BeginRunExecuted(), PHG4DetectorSubsystem::GetParams(), Fun4AllBase::Name(), and PHParameters::Print().

+ Here is the call graph for this function:

int BeamLineMagnetSubsystem::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 103 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 103 of file BeamLineMagnetSubsystem.cc

References m_SteppingAction, and PHG4SteppingAction::SetInterfacePointers().

+ Here is the call graph for this function:

void BeamLineMagnetSubsystem::SetDefaultParameters ( )
overrideprivatevirtual

Implements PHG4DetectorSubsystem.

Definition at line 120 of file BeamLineMagnetSubsystem.cc.

View newest version in sPHENIX GitHub at line 120 of file BeamLineMagnetSubsystem.cc

References PHG4DetectorSubsystem::set_default_double_param(), and PHG4DetectorSubsystem::set_default_string_param().

+ Here is the call graph for this function:

Member Data Documentation

std::string BeamLineMagnetSubsystem::m_AbsorberNodeName
private

Definition at line 69 of file BeamLineMagnetSubsystem.h.

View newest version in sPHENIX GitHub at line 69 of file BeamLineMagnetSubsystem.h

Referenced by InitRunSubsystem().

BeamLineMagnetDetector* BeamLineMagnetSubsystem::m_Detector = nullptr
private

detector geometry

defives from PHG4Detector

Definition at line 58 of file BeamLineMagnetSubsystem.h.

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

Referenced by GetDetector(), and InitRunSubsystem().

PHG4DisplayAction* BeamLineMagnetSubsystem::m_DisplayAction = nullptr
private

display attribute setting

derives from PHG4DisplayAction

Definition at line 66 of file BeamLineMagnetSubsystem.h.

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

Referenced by GetDisplayAction(), InitRunSubsystem(), and ~BeamLineMagnetSubsystem().

std::string BeamLineMagnetSubsystem::m_HitNodeName
private

Definition at line 68 of file BeamLineMagnetSubsystem.h.

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

Referenced by InitRunSubsystem().

PHG4SteppingAction* BeamLineMagnetSubsystem::m_SteppingAction = nullptr
private

particle tracking "stepping" action

derives from PHG4SteppingActions

Definition at line 62 of file BeamLineMagnetSubsystem.h.

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

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


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