mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-15 09:31:45 +00:00
Define copy/move ctors and assignment ops
Delete special member functions where they are not used. (as part of applying suggestions from cppcoreguidelines-special-member-functions) These classes don't need to be copyable/movable: # copy/move not used: zmq:: TransportFactory, Socket, Message, UnmanagedRegion, Poller, Context shm:: TransportFactory, Socket, Message, UnmanagedRegion, Poller ofi:: TransportFactory, Socket, Message, Context shm:: ZMsg, Region, Monitor, TerminalConfig, Manager plugins:: Config, Control, TerminalConfig fairmq::StateQueue, StateMachine, ProgOptions, PluginServices, PluginManager, Plugin, Device, StateSubscription TestData, BadDevice, TestDevice (test suite heplers) # used via ptr interface: fairmq::UnmanagedRegion, TransportFactory, Socket, Poller, Message These classes need to be movable/copyable: MyClass (test suite helper), fairmq::Channel, fairmq::Parts
This commit is contained in:
committed by
Dennis Klein
parent
597d88277b
commit
ad824b4de1
@@ -56,7 +56,9 @@ class Context
|
||||
}
|
||||
|
||||
Context(const Context&) = delete;
|
||||
Context operator=(const Context&) = delete;
|
||||
Context(Context&&) = delete;
|
||||
Context& operator=(const Context&) = delete;
|
||||
Context& operator=(Context&&) = delete;
|
||||
|
||||
void SubscribeToRegionEvents(RegionEventCallback callback)
|
||||
{
|
||||
|
@@ -33,6 +33,11 @@ class Message final : public fair::mq::Message
|
||||
friend class Socket;
|
||||
|
||||
public:
|
||||
Message(const Message&) = delete;
|
||||
Message(Message&&) = delete;
|
||||
Message& operator=(const Message&) = delete;
|
||||
Message& operator=(Message&&) = delete;
|
||||
|
||||
Message(FairMQTransportFactory* factory = nullptr)
|
||||
: fair::mq::Message(factory)
|
||||
, fMsg(std::make_unique<zmq_msg_t>())
|
||||
|
@@ -24,6 +24,12 @@ namespace fair::mq::zmq
|
||||
class Poller final : public fair::mq::Poller
|
||||
{
|
||||
public:
|
||||
Poller() = default;
|
||||
Poller(const Poller&) = delete;
|
||||
Poller(Poller&&) = delete;
|
||||
Poller& operator=(const Poller&) = delete;
|
||||
Poller& operator=(Poller&&) = delete;
|
||||
|
||||
Poller(const std::vector<Channel>& channels)
|
||||
: fItems()
|
||||
, fNumItems(0)
|
||||
@@ -102,9 +108,6 @@ class Poller final : public fair::mq::Poller
|
||||
}
|
||||
}
|
||||
|
||||
Poller(const Poller&) = delete;
|
||||
Poller operator=(const Poller&) = delete;
|
||||
|
||||
void SetItemEvents(zmq_pollitem_t& item, int type)
|
||||
{
|
||||
if (type == ZMQ_REQ || type == ZMQ_REP || type == ZMQ_PAIR || type == ZMQ_DEALER || type == ZMQ_ROUTER) {
|
||||
|
@@ -72,7 +72,9 @@ class Socket final : public fair::mq::Socket
|
||||
}
|
||||
|
||||
Socket(const Socket&) = delete;
|
||||
Socket operator=(const Socket&) = delete;
|
||||
Socket(Socket&&) = delete;
|
||||
Socket& operator=(const Socket&) = delete;
|
||||
Socket& operator=(Socket&&) = delete;
|
||||
|
||||
std::string GetId() const override { return fId; }
|
||||
|
||||
|
@@ -44,7 +44,9 @@ class TransportFactory final : public FairMQTransportFactory
|
||||
}
|
||||
|
||||
TransportFactory(const TransportFactory&) = delete;
|
||||
TransportFactory operator=(const TransportFactory&) = delete;
|
||||
TransportFactory(TransportFactory&&) = delete;
|
||||
TransportFactory& operator=(const TransportFactory&) = delete;
|
||||
TransportFactory& operator=(TransportFactory&&) = delete;
|
||||
|
||||
MessagePtr CreateMessage() override
|
||||
{
|
||||
|
@@ -59,7 +59,9 @@ class UnmanagedRegion final : public fair::mq::UnmanagedRegion
|
||||
}
|
||||
|
||||
UnmanagedRegion(const UnmanagedRegion&) = delete;
|
||||
UnmanagedRegion operator=(const UnmanagedRegion&) = delete;
|
||||
UnmanagedRegion(UnmanagedRegion&&) = delete;
|
||||
UnmanagedRegion& operator=(const UnmanagedRegion&) = delete;
|
||||
UnmanagedRegion& operator=(UnmanagedRegion&&) = delete;
|
||||
|
||||
virtual void* GetData() const override { return fBuffer; }
|
||||
virtual size_t GetSize() const override { return fSize; }
|
||||
|
Reference in New Issue
Block a user