FairMQ
1.2.3
C++ Message Passing Framework
fairmq
options
FairMQSuboptParser.h
Go to the documentation of this file.
1
/********************************************************************************
2
* Copyright (C) 2017 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3
* *
4
* This software is distributed under the terms of the *
5
* GNU Lesser General Public License (LGPL) version 3, *
6
* copied verbatim in the file "LICENSE" *
7
********************************************************************************/
8
13
14
#ifndef FAIRMQPARSER_SUBOPT_H
15
#define FAIRMQPARSER_SUBOPT_H
16
17
#include "FairMQParser.h"
// for FairMQMap
18
#include <boost/program_options.hpp>
19
#include <cstring>
20
#include <vector>
21
#include <string>
22
23
namespace
po
=
boost::program_options
;
24
25
namespace
fair
26
{
27
namespace
mq
28
{
29
namespace
parser
30
{
31
48
struct
SUBOPT
49
{
50
enum
channelOptionKeyIds
51
{
52
NAME = 0,
// name of the channel
53
TYPE,
// push, pull, publish, subscribe, etc
54
METHOD,
// bind or connect
55
ADDRESS,
// host, protocol and port address
56
TRANSPORT,
//
57
SNDBUFSIZE,
// size of the send queue
58
RCVBUFSIZE,
// size of the receive queue
59
SNDKERNELSIZE,
60
RCVKERNELSIZE,
61
RATELOGGING,
// logging rate
62
NUMSOCKETS,
63
lastsocketkey
64
};
65
66
constexpr
static
const
char
*channelOptionKeys[] = {
67
/*[NAME] = */
"name"
,
68
/*[TYPE] = */
"type"
,
69
/*[METHOD] = */
"method"
,
70
/*[ADDRESS] = */
"address"
,
71
/*[TRANSPORT] = */
"transport"
,
72
/*[SNDBUFSIZE] = */
"sndBufSize"
,
73
/*[RCVBUFSIZE] = */
"rcvBufSize"
,
74
/*[SNDKERNELSIZE] = */
"sndKernelSize"
,
75
/*[RCVKERNELSIZE] = */
"rcvKernelSize"
,
76
/*[RATELOGGING] = */
"rateLogging"
,
77
/*[NUMSOCKETS] = */
"numSockets"
,
78
nullptr
79
};
80
81
FairMQMap UserParser(
const
std::vector<std::string>& channelConfig,
const
std::string& deviceId,
const
std::string& rootNode =
"fairMQOptions"
);
82
};
83
84
}
85
}
86
}
87
88
#endif
/* FAIRMQPARSER_SUBOPT_H */
fair::mq::parser::SUBOPT
Definition:
FairMQSuboptParser.h:48
program_options
fair
Definition:
DeviceRunner.h:23
Generated by
1.8.13