diff --git a/fairmq/CMakeLists.txt b/fairmq/CMakeLists.txt index c21399c5..c6790f3e 100644 --- a/fairmq/CMakeLists.txt +++ b/fairmq/CMakeLists.txt @@ -63,6 +63,7 @@ if(BUILD_FAIRMQ) Tools.h TransportFactory.h Transports.h + TransportEnum.h UnmanagedRegion.h options/FairMQProgOptions.h runDevice.h diff --git a/fairmq/Channel.cxx b/fairmq/Channel.cxx index 6b47916c..4806e6e0 100644 --- a/fairmq/Channel.cxx +++ b/fairmq/Channel.cxx @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -383,4 +384,10 @@ bool Channel::BindEndpoint(string& endpoint) } } +std::string Channel::GetTransportName() const { return TransportName(fTransportType); } + +Transport Channel::GetTransportType() const { return fTransportType; } + +void Channel::UpdateTransport(const std::string& transport) { fTransportType = TransportType(transport); Invalidate(); } + } // namespace fair::mq diff --git a/fairmq/Channel.h b/fairmq/Channel.h index 1005092d..407d7bf5 100644 --- a/fairmq/Channel.h +++ b/fairmq/Channel.h @@ -14,7 +14,7 @@ #include #include #include -#include +#include #include #include // int64_t @@ -145,11 +145,11 @@ class Channel /// Get channel transport name ("default", "zeromq" or "shmem") /// @return Returns channel transport name (e.g. "default", "zeromq" or "shmem") - std::string GetTransportName() const { return TransportName(fTransportType); } + std::string GetTransportName() const; /// Get channel transport type /// @return Returns channel transport type - mq::Transport GetTransportType() const { return fTransportType; } + mq::Transport GetTransportType() const; /// Get socket send buffer size (in number of messages) /// @return Returns socket send buffer size (in number of messages) @@ -221,7 +221,7 @@ class Channel /// Set channel transport /// @param transport transport string ("default", "zeromq" or "shmem") - void UpdateTransport(const std::string& transport) { fTransportType = TransportType(transport); Invalidate(); } + void UpdateTransport(const std::string& transport); /// Set socket send buffer size /// @param sndBufSize Socket send buffer size (in number of messages) diff --git a/fairmq/Device.cxx b/fairmq/Device.cxx index 1c287055..ac2cc95a 100644 --- a/fairmq/Device.cxx +++ b/fairmq/Device.cxx @@ -9,6 +9,7 @@ // FairMQ #include #include +#include // boost #include // join/split diff --git a/fairmq/Device.h b/fairmq/Device.h index 327d0758..de99a41c 100644 --- a/fairmq/Device.h +++ b/fairmq/Device.h @@ -19,7 +19,7 @@ #include #include #include -#include +#include #include // logger diff --git a/fairmq/Message.h b/fairmq/Message.h index 9ce28c96..b5b1e66c 100644 --- a/fairmq/Message.h +++ b/fairmq/Message.h @@ -10,7 +10,7 @@ #define FAIR_MQ_MESSAGE_H #include // for size_t -#include +#include #include // unique_ptr #include diff --git a/fairmq/TransportEnum.h b/fairmq/TransportEnum.h new file mode 100644 index 00000000..395da072 --- /dev/null +++ b/fairmq/TransportEnum.h @@ -0,0 +1,22 @@ +/******************************************************************************** + * Copyright (C) 2014-2025 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH * + * * + * This software is distributed under the terms of the * + * GNU Lesser General Public Licence (LGPL) version 3, * + * copied verbatim in the file "LICENSE" * + ********************************************************************************/ + +#ifndef FAIR_MQ_TRANSPORTENUMS_H +#define FAIR_MQ_TRANSPORTENUMS_H + +namespace fair::mq { + +enum class Transport { + DEFAULT, + ZMQ, + SHM +}; + +} + +#endif // FAIR_MQ_TRANSPORTENUMS_H diff --git a/fairmq/TransportFactory.h b/fairmq/TransportFactory.h index 04431d7b..495166ae 100644 --- a/fairmq/TransportFactory.h +++ b/fairmq/TransportFactory.h @@ -14,7 +14,7 @@ #include #include #include -#include +#include #include #include // shared_ptr #include diff --git a/fairmq/Transports.h b/fairmq/Transports.h index 3725e828..05c95f42 100644 --- a/fairmq/Transports.h +++ b/fairmq/Transports.h @@ -10,6 +10,7 @@ #define FAIR_MQ_TRANSPORTS_H #include +#include #include #include #include @@ -18,13 +19,6 @@ namespace fair::mq { -enum class Transport -{ - DEFAULT, - ZMQ, - SHM -}; - struct TransportError : std::runtime_error { using std::runtime_error::runtime_error; diff --git a/fairmq/UnmanagedRegion.h b/fairmq/UnmanagedRegion.h index 9c832012..7f3bb901 100644 --- a/fairmq/UnmanagedRegion.h +++ b/fairmq/UnmanagedRegion.h @@ -9,7 +9,7 @@ #ifndef FAIR_MQ_UNMANAGEDREGION_H #define FAIR_MQ_UNMANAGEDREGION_H -#include +#include #include // size_t #include // uint32_t diff --git a/fairmq/shmem/Message.h b/fairmq/shmem/Message.h index d53eef5a..50b119fb 100644 --- a/fairmq/shmem/Message.h +++ b/fairmq/shmem/Message.h @@ -14,6 +14,7 @@ #include "UnmanagedRegionImpl.h" #include #include +#include #include diff --git a/fairmq/shmem/Segment.h b/fairmq/shmem/Segment.h index b401a136..46531cc2 100644 --- a/fairmq/shmem/Segment.h +++ b/fairmq/shmem/Segment.h @@ -10,6 +10,7 @@ #include #include +#include #include #include diff --git a/fairmq/shmem/UnmanagedRegion.h b/fairmq/shmem/UnmanagedRegion.h index 5a338723..fb4da9a4 100644 --- a/fairmq/shmem/UnmanagedRegion.h +++ b/fairmq/shmem/UnmanagedRegion.h @@ -13,6 +13,7 @@ #include #include #include +#include #include