ATLAS Offline Software
HIPLArVolumeAcceptTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 namespace G4UA
8 {
9 
10  //---------------------------------------------------------------------------
12  const std::string& name,
13  const IInterface* parent)
15  {
16  }
17 
18  //---------------------------------------------------------------------------
19  std::unique_ptr<HIPLArVolumeAccept>
21  {
22  ATH_MSG_DEBUG("Making a HIPLArVolumeAccept action");
23  auto action = std::make_unique<HIPLArVolumeAccept>();
24  actionList.eventActions.push_back( action.get() );
25  actionList.steppingActions.push_back( action.get() );
26  return action;
27  }
28 
29  //---------------------------------------------------------------------------
31  {
32  // Accumulate the results across threads
36 
37  ATH_MSG_INFO("#########################################");
38  ATH_MSG_INFO("## ##");
39  ATH_MSG_INFO( "## HIPLArVolumeAccept - EndOfRun ##");
40  ATH_MSG_INFO( "## ##");
41  ATH_MSG_INFO( "#########################################");
42  ATH_MSG_INFO(report.HIPevts <<" events were processed by HIPLArVolumeAccept");
43  ATH_MSG_INFO(report.HIPevts_failed<<" events were killed because they had no HIP in EMB or EMEC");
44  double HIPfraction=1.*(report.HIPevts-report.HIPevts_failed)/report.HIPevts;
45  ATH_MSG_INFO("HIP Acceptance: "<<HIPfraction);
46 
47  return StatusCode::SUCCESS;
48  }
49 
50 } // namespace G4UA
G4UA::HIPLArVolumeAccept::getReport
const Report & getReport() const
Definition: HIPLArVolumeAccept.h:37
G4UA::G4AtlasUserActions
Struct for passing around user actions.
Definition: IUserActionTool.h:32
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
G4UA
for nSW
Definition: CalibrationDefaultProcessing.h:19
G4UA::HIPLArVolumeAccept::Report::merge
void merge(const Report &rep)
Definition: HIPLArVolumeAccept.h:31
checkTP.report
report
Definition: checkTP.py:127
G4UA::ThreadSpecificUserAction::accumulate
void accumulate(ResultType &result, Mapper mapOp, Reducer reduceOp)
Accumulate results across user actions with specified operations.
Definition: ThreadSpecificUserAction.h:88
HIPLArVolumeAcceptTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
G4UA::UserActionToolBase< HIPLArVolumeAccept >::m_actions
ThreadSpecificUserAction< HIPLArVolumeAccept > m_actions
Thread-specific storage of the user action.
Definition: UserActionToolBase.h:63
G4UA::HIPLArVolumeAccept
NEEDS DOCUMENTATION.
Definition: HIPLArVolumeAccept.h:22
G4UA::HIPLArVolumeAcceptTool::HIPLArVolumeAcceptTool
HIPLArVolumeAcceptTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition: HIPLArVolumeAcceptTool.cxx:11
test_pyathena.parent
parent
Definition: test_pyathena.py:15
G4UA::HIPLArVolumeAcceptTool::finalize
virtual StatusCode finalize() override
Finalize the tool.
Definition: HIPLArVolumeAcceptTool.cxx:30
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
G4UA::UserActionToolBase
abstract template utility base-class for G4 user-action tools.
Definition: UserActionToolBase.h:33
python.CaloScaleNoiseConfig.action
action
Definition: CaloScaleNoiseConfig.py:77
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
G4UA::G4AtlasUserActions::eventActions
std::vector< G4UserEventAction * > eventActions
Definition: IUserActionTool.h:34
G4UA::G4AtlasUserActions::steppingActions
std::vector< G4UserSteppingAction * > steppingActions
Definition: IUserActionTool.h:36
G4UA::HIPLArVolumeAcceptTool::makeAndFillAction
virtual std::unique_ptr< HIPLArVolumeAccept > makeAndFillAction(G4AtlasUserActions &) override final
Create the action for the current thread.
Definition: HIPLArVolumeAcceptTool.cxx:20
G4UA::HIPLArVolumeAccept::Report
Report class for merging per-thread results.
Definition: HIPLArVolumeAccept.h:28