FairMQ
1.4.33
C++ Message Queuing Library and Framework
fairmq
FairMQPoller.h
1
/********************************************************************************
2
* Copyright (C) 2014-2018 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3
* *
4
* This software is distributed under the terms of the *
5
* GNU Lesser General Public Licence (LGPL) version 3, *
6
* copied verbatim in the file "LICENSE" *
7
********************************************************************************/
8
9
#ifndef FAIRMQPOLLER_H_
10
#define FAIRMQPOLLER_H_
11
12
#include <string>
13
#include <memory>
14
15
class
FairMQPoller
16
{
17
public
:
18
virtual
void
Poll(
const
int
timeout) = 0;
19
virtual
bool
CheckInput(
const
int
index) = 0;
20
virtual
bool
CheckOutput(
const
int
index) = 0;
21
virtual
bool
CheckInput(
const
std::string& channelKey,
const
int
index) = 0;
22
virtual
bool
CheckOutput(
const
std::string& channelKey,
const
int
index) = 0;
23
24
virtual
~
FairMQPoller
() {};
25
};
26
27
using
FairMQPollerPtr = std::unique_ptr<FairMQPoller>;
28
29
namespace
fair::mq
30
{
31
32
using
Poller =
FairMQPoller
;
33
using
PollerPtr = FairMQPollerPtr;
34
struct
PollerError
: std::runtime_error {
using
std::runtime_error::runtime_error; };
35
36
}
// namespace fair::mq
37
38
#endif
/* FAIRMQPOLLER_H_ */
fair::mq::PollerError
Definition:
FairMQPoller.h:34
fair::mq
Tools for interfacing containers to the transport via polymorphic allocators.
Definition:
DeviceRunner.h:23
FairMQPoller
Definition:
FairMQPoller.h:16
privacy