The Gaudi Framework  v38r0 (2143aa4c)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
GaudiPPS.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 \***********************************************************************************/
13 
14 namespace GaudiExamples {
20  struct GaudiPPS : public Gaudi::Functional::Consumer<void()> {
21  using Consumer::Consumer;
22 
23  StatusCode initialize() override {
24  return Consumer::initialize().andThen( [&] {
26  if ( msgLevel( MSG::DEBUG ) ) debug() << "==> Initialize" << endmsg;
27  auto pps = service<IParticlePropertySvc>( "Gaudi::ParticlePropertySvc", true );
28  } );
29  }
30  void operator()() const override {
31  if ( msgLevel( MSG::DEBUG ) ) debug() << "==> Execute" << endmsg;
32  }
33  };
34 
35  DECLARE_COMPONENT( GaudiPPS )
36 } // namespace GaudiExamples
GaudiExamples::GaudiPPS::operator()
void operator()() const override
Definition: GaudiPPS.cpp:30
MSG::DEBUG
@ DEBUG
Definition: IMessageSvc.h:25
Gaudi::Functional::Consumer
details::Consumer< Signature, Traits_, details::isLegacy< Traits_ > > Consumer
Definition: Consumer.h:68
StatusCode::andThen
StatusCode andThen(F &&f, ARGS &&... args) const
Chain code blocks making the execution conditional a success result.
Definition: StatusCode.h:163
Gaudi::Interfaces::IParticlePropertySvc
Definition: IParticlePropertySvc.h:29
GaudiExamples::GaudiPPS::initialize
StatusCode initialize() override
Definition: GaudiPPS.cpp:23
GaudiExamples
Definition: __init__.py:1
IParticlePropertySvc.h
Gaudi::Functional::details::Consumer
Definition: Consumer.h:23
StatusCode
Definition: StatusCode.h:65
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:203
Consumer.h
DECLARE_COMPONENT
#define DECLARE_COMPONENT(type)
Definition: PluginServiceV1.h:46
GaudiExamples::GaudiPPS
Small algorithm using Gaudi::ParticlePropertySvc.
Definition: GaudiPPS.cpp:20