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/Issues.hpp
"
12
#include "
utilities/get_ips.hpp
"
13
14
#include <string>
15
#include <vector>
16
17
// ZMQ URIs are formatted as follows: tcp://{host}:{port}
18
dunedaq::utilities::ZmqUri::ZmqUri
(std::string connection_string)
19
{
20
if
(connection_string.find(
"://"
) == std::string::npos) {
21
throw
InvalidUri(
ERS_HERE
, connection_string);
22
}
23
24
scheme
= connection_string.substr(0, connection_string.find(
"://"
));
25
connection_string = connection_string.substr(connection_string.find(
"://"
) + 3);
26
27
if
(connection_string.find(
":"
) != std::string::npos) {
28
port
= connection_string.substr(connection_string.find(
":"
) + 1);
29
connection_string = connection_string.substr(0, connection_string.find(
":"
));
30
}
31
host
= connection_string;
32
}
33
34
std::vector<std::string>
35
dunedaq::utilities::ZmqUri::get_uri_ip_addresses
()
36
{
37
if
(
scheme
==
"tcp"
) {
38
auto
output =
get_hostname_ips
(
host
);
39
40
for
(
size_t
ii = 0; ii < output.size(); ++ii) {
41
output[ii] =
"tcp://"
+ output[ii] +
":"
+
port
;
42
}
43
return
output;
44
}
else
{
45
return
{
to_string
() };
46
}
47
}
ERS_HERE
#define ERS_HERE
Definition
LocalContext.hpp:127
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:18
dunedaq::utilities::ZmqUri::get_uri_ip_addresses
std::vector< std::string > get_uri_ip_addresses()
Definition
ZmqUri.cpp:35
dunedaq::utilities::ZmqUri::port
std::string port
Definition
ZmqUri.hpp:25
Issues.hpp
Generated on
for DUNE-DAQ by
1.18.0