From b354a1480abbd71fb7fb82c39c81ea0644bbfce4 Mon Sep 17 00:00:00 2001 From: Jonas Schnelli Date: Tue, 19 May 2020 15:13:17 +0200 Subject: [PATCH] Add BlockAndHeaderTipInfo to the node interface/appInit --- src/interfaces/node.cpp | 4 ++-- src/interfaces/node.h | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/interfaces/node.cpp b/src/interfaces/node.cpp index 969767b90fc..21400d00f8d 100644 --- a/src/interfaces/node.cpp +++ b/src/interfaces/node.cpp @@ -80,10 +80,10 @@ public: return AppInitBasicSetup() && AppInitParameterInteraction() && AppInitSanityChecks() && AppInitLockDataDirectory(); } - bool appInitMain() override + bool appInitMain(interfaces::BlockAndHeaderTipInfo* tip_info) override { m_context->chain = MakeChain(*m_context); - return AppInitMain(m_context_ref, *m_context); + return AppInitMain(m_context_ref, *m_context, tip_info); } void appShutdown() override { diff --git a/src/interfaces/node.h b/src/interfaces/node.h index cd3cfe487d5..753f3e6b132 100644 --- a/src/interfaces/node.h +++ b/src/interfaces/node.h @@ -39,6 +39,16 @@ class Handler; class Wallet; struct BlockTip; +//! Block and header tip information +struct BlockAndHeaderTipInfo +{ + int block_height; + int64_t block_time; + int header_height; + int64_t header_time; + double verification_progress; +}; + //! Top-level interface for a bitcoin node (bitcoind process). class Node { @@ -96,7 +106,7 @@ public: virtual bool baseInitialize() = 0; //! Start node. - virtual bool appInitMain() = 0; + virtual bool appInitMain(interfaces::BlockAndHeaderTipInfo* tip_info = nullptr) = 0; //! Stop node. virtual void appShutdown() = 0;