DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
utilities
src
ZmqUri.cpp
Go to the documentation of this file.
1
9
10
#include "
utilities/ZmqUri.hpp
"
11
#include "
utilities/get_ips.hpp
"
12
#include "
utilities/Issues.hpp
"
13
14
#include <string>
15
#include <vector>
16
17
18
// ZMQ URIs are formatted as follows: tcp://{host}:{port}
19
dunedaq::utilities::ZmqUri::ZmqUri
(std::string connection_string)
20
{
21
if
(connection_string.find(
"://"
) == std::string::npos) {
22
throw
InvalidUri(
ERS_HERE
, connection_string);
23
}
24
25
scheme
= connection_string.substr(0, connection_string.find(
"://"
));
26
connection_string = connection_string.substr(connection_string.find(
"://"
) + 3);
27
28
if
(connection_string.find(
":"
) != std::string::npos) {
29
port
= connection_string.substr(connection_string.find(
":"
) + 1);
30
connection_string = connection_string.substr(0, connection_string.find(
":"
));
31
}
32
host
= connection_string;
33
}
34
35
std::vector<std::string>
36
dunedaq::utilities::ZmqUri::get_uri_ip_addresses
()
37
{
38
if
(
scheme
==
"tcp"
) {
39
auto
output =
get_hostname_ips
(
host
);
40
41
for
(
size_t
ii = 0; ii < output.size(); ++ii) {
42
output[ii] =
"tcp://"
+ output[ii] +
":"
+
port
;
43
}
44
return
output;
45
}
else
{
46
return
{
to_string
() };
47
}
48
}
ERS_HERE
#define ERS_HERE
Definition
LocalContext.hpp:141
ZmqUri.hpp
get_ips.hpp
dunedaq::utilities::get_hostname_ips
std::vector< std::string > get_hostname_ips(std::string hostname)
Definition
get_ips.hpp:31
dunedaq::utilities::ZmqUri::host
std::string host
Definition
ZmqUri.hpp:24
dunedaq::utilities::ZmqUri::to_string
std::string to_string()
Definition
ZmqUri.hpp:26
dunedaq::utilities::ZmqUri::scheme
std::string scheme
Definition
ZmqUri.hpp:23
dunedaq::utilities::ZmqUri::ZmqUri
ZmqUri(std::string connection_string)
Definition
ZmqUri.cpp:19
dunedaq::utilities::ZmqUri::get_uri_ip_addresses
std::vector< std::string > get_uri_ip_addresses()
Definition
ZmqUri.cpp:36
dunedaq::utilities::ZmqUri::port
std::string port
Definition
ZmqUri.hpp:25
Issues.hpp
Generated on
for DUNE-DAQ by
1.17.0