aboutsummaryrefslogtreecommitdiff
path: root/src/validationinterface.cpp
diff options
context:
space:
mode:
authorTheCharlatan <seb.kung@gmail.com>2023-11-27 11:46:36 +0100
committerTheCharlatan <seb.kung@gmail.com>2024-02-15 14:43:12 +0100
commit4abde2c4e3fd9b66394b79874583bdc2a9132c36 (patch)
treeb4b0f5e954380d093360d01b591a7b27d2959ecd /src/validationinterface.cpp
parent84f5c135b8118cbe15b8bfb4db80d61237987f64 (diff)
downloadbitcoin-4abde2c4e3fd9b66394b79874583bdc2a9132c36.tar.xz
[refactor] Make MainSignals RAII styled
Diffstat (limited to 'src/validationinterface.cpp')
-rw-r--r--src/validationinterface.cpp26
1 files changed, 4 insertions, 22 deletions
diff --git a/src/validationinterface.cpp b/src/validationinterface.cpp
index d1d562ff32..c61473be0a 100644
--- a/src/validationinterface.cpp
+++ b/src/validationinterface.cpp
@@ -94,31 +94,18 @@ public:
}
};
-CMainSignals::CMainSignals() {}
+CMainSignals::CMainSignals(CScheduler& scheduler)
+ : m_internals{std::make_unique<MainSignalsImpl>(scheduler)} {}
CMainSignals::~CMainSignals() {}
-void CMainSignals::RegisterBackgroundSignalScheduler(CScheduler& scheduler)
-{
- assert(!m_internals);
- m_internals = std::make_unique<MainSignalsImpl>(scheduler);
-}
-
-void CMainSignals::UnregisterBackgroundSignalScheduler()
-{
- m_internals.reset(nullptr);
-}
-
void CMainSignals::FlushBackgroundCallbacks()
{
- if (m_internals) {
- m_internals->m_schedulerClient.EmptyQueue();
- }
+ m_internals->m_schedulerClient.EmptyQueue();
}
size_t CMainSignals::CallbacksPending()
{
- if (!m_internals) return 0;
return m_internals->m_schedulerClient.CallbacksPending();
}
@@ -143,16 +130,11 @@ void CMainSignals::UnregisterSharedValidationInterface(std::shared_ptr<CValidati
void CMainSignals::UnregisterValidationInterface(CValidationInterface* callbacks)
{
- if (m_internals) {
- m_internals->Unregister(callbacks);
- }
+ m_internals->Unregister(callbacks);
}
void CMainSignals::UnregisterAllValidationInterfaces()
{
- if (!m_internals) {
- return;
- }
m_internals->Clear();
}