MeshLib C++ Docs
Loading...
Searching...
No Matches
MRSignal.h
Go to the documentation of this file.
1#pragma once
2
3#if (defined(__APPLE__) && defined(__clang__))
4#pragma clang diagnostic push
5#pragma clang diagnostic ignored "-Wunused-parameter"
6#pragma clang diagnostic ignored "-Wdeprecated-dynamic-exception-spec"
7#endif
8
9#pragma warning(push)
10#pragma warning(disable: 4619)
11#include <boost/signals2/signal.hpp>
12#pragma warning(pop)
13
14#if (defined(__APPLE__) && defined(__clang__))
15#pragma clang diagnostic pop
16#endif
17
18namespace MR
19{
22
23
26template<typename T>
27struct Signal : boost::signals2::signal<T>
28{
29 Signal() noexcept = default;
30 Signal( const Signal& ) noexcept : boost::signals2::signal<T>() {}
31 Signal( Signal&& ) noexcept = default;
32 Signal& operator =( const Signal& ) noexcept { return *this; }
33 Signal& operator =( Signal&& ) noexcept = default;
34 Signal& operator =( boost::signals2::signal<T>&& b ) noexcept { *static_cast<boost::signals2::signal<T>*>(this) = std::move( b ); return *this; }
35};
36
37}
Signal() noexcept=default
Signal & operator=(const Signal &) noexcept
Definition MRSignal.h:32
Signal(Signal &&) noexcept=default
only for bindings generation
Definition MRCameraOrientationPlugin.h:8