ATLAS Offline Software
G4HitFilterTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "G4HitFilterTool.h"
6 
7 
8 namespace G4UA
9 {
10 
11  //----------------------------------------------------------------------------
13  const std::string& name,
14  const IInterface* parent)
16  {
17  declareProperty("VolumeNames", m_config.volumenames);
18  }
19 
20  //----------------------------------------------------------------------------
21  std::unique_ptr<G4HitFilter>
23  {
24  ATH_MSG_DEBUG("Constructing a G4HitFilter action");
25  auto action = std::make_unique<G4HitFilter>(m_config);
26  actionList.runActions.push_back( action.get() );
27  actionList.eventActions.push_back( action.get() );
28  return action;
29  }
30 
31  //----------------------------------------------------------------------------
33  {
34  // Merge results across worker threads
38 
39  // Report the results
40  ATH_MSG_INFO("processed " << report.ntot << " events, " <<
41  report.npass << " events passed filter ");
42  return StatusCode::SUCCESS;
43  }
44 
45 } // namespace G4UA
G4UA::G4AtlasUserActions
Struct for passing around user actions.
Definition: IUserActionTool.h:32
G4UA::G4HitFilter::Report
Definition: G4HitFilter.h:37
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
G4UA
for nSW
Definition: CalibrationDefaultProcessing.h:19
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
G4UA::G4HitFilter::Report::merge
void merge(const Report &rep)
Definition: G4HitFilter.h:40
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< G4HitFilter >::m_actions
ThreadSpecificUserAction< G4HitFilter > m_actions
Thread-specific storage of the user action.
Definition: UserActionToolBase.h:63
G4UA::G4HitFilterTool::G4HitFilterTool
G4HitFilterTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition: G4HitFilterTool.cxx:12
test_pyathena.parent
parent
Definition: test_pyathena.py:15
G4UA::G4HitFilterTool::makeAndFillAction
virtual std::unique_ptr< G4HitFilter > makeAndFillAction(G4AtlasUserActions &) override final
Construct the user action for current worker thread.
Definition: G4HitFilterTool.cxx:22
G4UA::G4HitFilter
Definition: G4HitFilter.h:24
G4UA::G4HitFilterTool::finalize
virtual StatusCode finalize() override
Finalize the tool.
Definition: G4HitFilterTool.cxx:32
G4HitFilterTool.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
G4UA::G4AtlasUserActions::runActions
std::vector< G4UserRunAction * > runActions
Definition: IUserActionTool.h:33
G4UA::UserActionToolBase
abstract template utility base-class for G4 user-action tools.
Definition: UserActionToolBase.h:33
G4UA::G4HitFilter::Config::volumenames
std::vector< std::string > volumenames
Definition: G4HitFilter.h:30
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
declareProperty
#define declareProperty(n, p, h)
Definition: BaseFakeBkgTool.cxx:15
G4UA::G4HitFilter::getReport
const Report & getReport() const
Definition: G4HitFilter.h:46
G4UA::G4HitFilterTool::m_config
G4HitFilter::Config m_config
User action configuration options.
Definition: G4HitFilterTool.h:39