ATLAS Offline Software
DummyRCUSvc.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration.
4  */
13 #ifndef ATHENAKERNEL_DUMMYRCUSVC_H
14 #define ATHENAKERNEL_DUMMYRCUSVC_H
15 
16 
17 #include "AthenaKernel/IRCUSvc.h"
18 #include <cstdlib>
19 
20 
21 namespace Athena_test {
22 
23 
25  : public Athena::IRCUSvc
26 {
27 public:
28  virtual StatusCode remove (Athena::IRCUObject* /*obj*/) override
29  {
30  return StatusCode::SUCCESS;
31  }
32  virtual size_t getNumSlots() const override { return 1; }
33  virtual void add (Athena::IRCUObject* /*obj*/) override
34  { }
35 
36  virtual unsigned long addRef() override { std::abort(); }
37  virtual unsigned long release() override { std::abort(); }
38  virtual StatusCode queryInterface(const InterfaceID &/*ti*/, void** /*pp*/) override { std::abort(); }
39 };
40 
41 
42 } // namespace Athena_test
43 
44 
45 #endif // not ATHENAKERNEL_DUMMYRCUSVC_H
Athena_test::DummyRCUSvc::add
virtual void add(Athena::IRCUObject *) override
Add a new RCU object to the set being managed.
Definition: DummyRCUSvc.h:33
Athena_test::DummyRCUSvc::getNumSlots
virtual size_t getNumSlots() const override
Return the number of event slots.
Definition: DummyRCUSvc.h:32
IRCUSvc.h
read-copy-update (RCU) style synchronization for Athena.
Athena_test::DummyRCUSvc::queryInterface
virtual StatusCode queryInterface(const InterfaceID &, void **) override
Definition: DummyRCUSvc.h:38
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Athena_test
functions & macros to test the difference between floats
Definition: InitGaudiGoogleTest.h:30
Athena::IRCUSvc
Interface for RCU service.
Definition: IRCUSvc.h:40
Athena_test::DummyRCUSvc
Definition: DummyRCUSvc.h:26
Athena_test::DummyRCUSvc::addRef
virtual unsigned long addRef() override
Definition: DummyRCUSvc.h:36
Athena::IRCUObject
Base object class for RCU-style synchronization for Athena.
Definition: RCUObject.h:146
Athena_test::DummyRCUSvc::remove
virtual StatusCode remove(Athena::IRCUObject *) override
Remove an object from the service.
Definition: DummyRCUSvc.h:28
Athena_test::DummyRCUSvc::release
virtual unsigned long release() override
Definition: DummyRCUSvc.h:37