ATLAS Offline Software
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
G4UA::StepNtupleTool Class Reference

Tool which manages the StepNtuple action. More...

#include <StepNtupleTool.h>

Inheritance diagram for G4UA::StepNtupleTool:
Collaboration diagram for G4UA::StepNtupleTool:

Public Member Functions

 StepNtupleTool (const std::string &type, const std::string &name, const IInterface *parent)
 standard tool ctor More...
 
virtual StatusCode fillUserAction (G4AtlasUserActions &actionLists) override final
 Fill the user action lists. More...
 

Protected Member Functions

virtual std::unique_ptr< StepNtuplemakeAndFillAction (G4AtlasUserActions &) override final
 Create action for this thread. More...
 

Protected Attributes

ThreadSpecificUserAction< StepNtuplem_actions
 Thread-specific storage of the user action. More...
 

Detailed Description

Tool which manages the StepNtuple action.

Create the StepNtuple for each worker thread

Author
Andrea Di Simone

Definition at line 21 of file StepNtupleTool.h.

Constructor & Destructor Documentation

◆ StepNtupleTool()

G4UA::StepNtupleTool::StepNtupleTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

standard tool ctor

Definition at line 10 of file StepNtupleTool.cxx.

13  : UserActionToolBase<StepNtuple>(type, name, parent)
14  {}

Member Function Documentation

◆ fillUserAction()

virtual StatusCode G4UA::UserActionToolBase< StepNtuple >::fillUserAction ( G4AtlasUserActions actionLists)
inlinefinaloverridevirtualinherited

Fill the user action lists.

Definition at line 45 of file UserActionToolBase.h.

46  {
47  auto myAction = makeAndFillAction(actionLists);
48  if(myAction == nullptr) {
49  ATH_MSG_ERROR( "Failed to construct user action in " << name() );
50  return StatusCode::FAILURE;
51  }
52  m_actions.set( std::move(myAction) );
53  return StatusCode::SUCCESS;
54  }

◆ makeAndFillAction()

std::unique_ptr< StepNtuple > G4UA::StepNtupleTool::makeAndFillAction ( G4AtlasUserActions actionList)
finaloverrideprotectedvirtual

Create action for this thread.

Implements G4UA::UserActionToolBase< StepNtuple >.

Definition at line 17 of file StepNtupleTool.cxx.

18  {
19  ATH_MSG_DEBUG("Constructing a StepNtuple action");
20  auto action = std::make_unique<StepNtuple>();
21  actionList.runActions.push_back( action.get() );
22  actionList.eventActions.push_back( action.get() );
23  actionList.steppingActions.push_back( action.get() );
24  return action;
25  }

Member Data Documentation

◆ m_actions

Thread-specific storage of the user action.

Definition at line 63 of file UserActionToolBase.h.


The documentation for this class was generated from the following files:
G4UA::ThreadSpecificUserAction::set
void set(std::unique_ptr< ActionType > action)
Assign the object of the current thread.
Definition: ThreadSpecificUserAction.h:61
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
G4UA::UserActionToolBase< StepNtuple >::m_actions
ThreadSpecificUserAction< StepNtuple > m_actions
Thread-specific storage of the user action.
Definition: UserActionToolBase.h:63
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
G4UA::UserActionToolBase< StepNtuple >::makeAndFillAction
virtual std::unique_ptr< StepNtuple > makeAndFillAction(G4AtlasUserActions &actionLists)=0
Make the action and push onto the lists.
python.CaloScaleNoiseConfig.action
action
Definition: CaloScaleNoiseConfig.py:77
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78