Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IAthenaIPCTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ATHENAKERNEL_IATHENAIPCTOOL_H
6 #define ATHENAKERNEL_IATHENAIPCTOOL_H
7 
8 #include <string>
9 
10 #include "GaudiKernel/IAlgTool.h"
12 
13 
14 class IAthenaIPCTool : virtual public ::IAlgTool {
15 public:
17 
18  virtual StatusCode makeServer(int num, const std::string& streamPortSuffix) = 0;
19  virtual bool isServer() const = 0;
20  virtual StatusCode makeClient(int num, std::string& streamPortSuffix) = 0;
21  virtual bool isClient() const = 0;
22 
23  virtual StatusCode putEvent ATLAS_NOT_THREAD_SAFE (long eventNumber, const void* source, size_t nbytes, unsigned int status) const = 0;
24  virtual StatusCode getLockedEvent(void** target, unsigned int& status) const = 0;
25  virtual StatusCode lockEvent(long eventNumber) const = 0;
26 
27  virtual StatusCode putObject(const void* source, size_t nbytes, int num = 0) = 0;
28  virtual StatusCode getObject(void** target, size_t& nbytes, int num = 0) = 0;
29  virtual StatusCode clearObject(const char** tokenString, int& num) = 0;
30  virtual StatusCode lockObject(const char* tokenString, int num = 0) = 0;
31 };
32 
33 #endif
IAthenaIPCTool::isServer
virtual bool isServer() const =0
IAthenaIPCTool::DeclareInterfaceID
DeclareInterfaceID(IAthenaIPCTool, 1, 0)
IAthenaIPCTool::makeClient
virtual StatusCode makeClient(int num, std::string &streamPortSuffix)=0
IAthenaIPCTool
Definition: IAthenaIPCTool.h:14
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IAthenaIPCTool::putObject
virtual StatusCode putObject(const void *source, size_t nbytes, int num=0)=0
xAOD::eventNumber
eventNumber
Definition: EventInfo_v1.cxx:124
IAthenaIPCTool::isClient
virtual bool isClient() const =0
IAthenaIPCTool::lockEvent
virtual StatusCode lockEvent(long eventNumber) const =0
trigbs_pickEvents.num
num
Definition: trigbs_pickEvents.py:76
IAthenaIPCTool::clearObject
virtual StatusCode clearObject(const char **tokenString, int &num)=0
IAthenaIPCTool::getObject
virtual StatusCode getObject(void **target, size_t &nbytes, int num=0)=0
IAthenaIPCTool::lockObject
virtual StatusCode lockObject(const char *tokenString, int num=0)=0
IAthenaIPCTool::ATLAS_NOT_THREAD_SAFE
virtual StatusCode putEvent ATLAS_NOT_THREAD_SAFE(long eventNumber, const void *source, size_t nbytes, unsigned int status) const =0
copySelective.target
string target
Definition: copySelective.py:37
copySelective.source
string source
Definition: copySelective.py:32
merge.status
status
Definition: merge.py:17
IAthenaIPCTool::makeServer
virtual StatusCode makeServer(int num, const std::string &streamPortSuffix)=0
checker_macros.h
Define macros for attributes used to control the static checker.
IAthenaIPCTool::getLockedEvent
virtual StatusCode getLockedEvent(void **target, unsigned int &status) const =0