The Gaudi Framework  master (37c0b60a)
StopperAlg.cpp
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2023 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 #include <Gaudi/Algorithm.h>
13 
16 
17  StatusCode execute( const EventContext& ) const override {
18  static int count = 0;
19 
20  if ( ++count >= m_stopcount ) {
21  info() << "scheduling a event processing stop...." << endmsg;
22  auto evt = service<IEventProcessor>( "ApplicationMgr" );
23  if ( evt->stopRun().isFailure() ) {
24  error() << "unable to schedule a stopRun" << endmsg;
25  return StatusCode::FAILURE;
26  }
27  }
28 
29  return StatusCode::SUCCESS;
30  }
31 
32  Gaudi::Property<int> m_stopcount{ this, "StopCount", 3 };
33 };
34 
IOTest.evt
evt
Definition: IOTest.py:107
StopperAlg
Definition: StopperAlg.cpp:14
StatusCode
Definition: StatusCode.h:65
Gaudi::Algorithm
Base class from which all concrete algorithm classes should be derived.
Definition: Algorithm.h:90
Algorithm.h
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:202
StopperAlg::m_stopcount
Gaudi::Property< int > m_stopcount
Definition: StopperAlg.cpp:32
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:100
DECLARE_COMPONENT
#define DECLARE_COMPONENT(type)
Definition: PluginServiceV1.h:46
EventContext
Definition: EventContext.h:34
Gaudi::Algorithm::Algorithm
Algorithm(std::string name, ISvcLocator *svcloc, std::string version=PACKAGE_VERSION)
Constructor.
Definition: Algorithm.h:101
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:101
IEventProcessor.h
Gaudi::Property< int >
StopperAlg::execute
StatusCode execute(const EventContext &) const override
Definition: StopperAlg.cpp:17