diff options
| author | ifsmirnov <[email protected]> | 2025-06-24 22:06:51 +0300 |
|---|---|---|
| committer | ifsmirnov <[email protected]> | 2025-06-24 22:18:28 +0300 |
| commit | 55cdb44decfd610ddefbcbf7ef9b4b8799937564 (patch) | |
| tree | 241859d63699cea85ae226137880241a22a04ccc | |
| parent | 507e7e6f4ff8a39643ab15470199a85ec7cf2f00 (diff) | |
Switch TTabletManager to virtual interface
commit_hash:2ce8952e7e1da466264de530778e4d62a490f52c
| -rw-r--r-- | yt/yt/core/actions/signal.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/yt/yt/core/actions/signal.h b/yt/yt/core/actions/signal.h index 395249ad5d5..280778943e6 100644 --- a/yt/yt/core/actions/signal.h +++ b/yt/yt/core/actions/signal.h @@ -61,6 +61,14 @@ public: \ } \ static_assert(true) +#define DEFINE_SIGNAL_WITH_ACCESSOR_OVERRIDE(TSignature, name) \ + DEFINE_SIGNAL_OVERRIDE(TSignature, name); \ + ::NYT::TCallbackList<TSignature>* Get##name##Signal() override \ + { \ + return &name##_; \ + } \ + static_assert(true) + #define DECLARE_SIGNAL(TSignature, name) \ void Subscribe##name(const ::NYT::TCallback<TSignature>& callback); \ void Unsubscribe##name(const ::NYT::TCallback<TSignature>& callback) @@ -77,6 +85,10 @@ public: \ virtual void Subscribe##name(const ::NYT::TCallback<TSignature>& callback) = 0; \ virtual void Unsubscribe##name(const ::NYT::TCallback<TSignature>& callback) = 0 +#define DECLARE_INTERFACE_SIGNAL_WITH_ACCESSOR(TSignature, name) \ + DECLARE_INTERFACE_SIGNAL(TSignature, name); \ + virtual ::NYT::TCallbackList<TSignature>* Get##name##Signal() = 0 + #define DELEGATE_SIGNAL_WITH_RENAME(declaringType, TSignature, name, delegateTo, delegateName) \ void declaringType::Subscribe##name(const ::NYT::TCallback<TSignature>& callback) \ { \ |
