Bitcoin Core 31.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
BitcoinApplication Class Reference

Main Bitcoin application object. More...

#include <bitcoin.h>

Inheritance diagram for BitcoinApplication:
[legend]
Collaboration diagram for BitcoinApplication:
[legend]

Public Slots

void initializeResult (bool success, interfaces::BlockAndHeaderTipInfo tip_info)
void requestShutdown ()
 Request core shutdown.
void handleRunawayException (const QString &message)
 Handle runaway exceptions. Shows a message box with the problem and quits the program.
void handleNonFatalException (const QString &message)
 A helper function that shows a message box with details about a non-fatal exception.

Signals

void requestedInitialize ()
void requestedShutdown ()
void windowShown (BitcoinGUI *window)

Public Member Functions

 BitcoinApplication ()
 ~BitcoinApplication ()
void parameterSetup ()
 parameter interaction/setup based on rules
bool createOptionsModel (bool resetSettings)
 Create options model.
void InitPruneSetting (int64_t prune_MiB)
 Initialize prune setting.
void createWindow (const NetworkStyle *networkStyle)
 Create main window.
void createSplashScreen (const NetworkStyle *networkStyle)
 Create splash screen.
void createNode (interfaces::Init &init)
 Create or spawn node.
bool baseInitialize ()
 Basic initialization, before starting initialization/shutdown thread. Return true on success.
void requestInitialize ()
 Request core initialization.
WId getMainWinId () const
 Get window identifier of QMainWindow (BitcoinGUI).
void setupPlatformStyle ()
 Setup platform style.
interfaces::Nodenode () const

Protected Member Functions

bool event (QEvent *e) override

Private Member Functions

void startThread ()

Private Attributes

std::optional< InitExecutorm_executor
OptionsModeloptionsModel {nullptr}
ClientModelclientModel {nullptr}
BitcoinGUIwindow {nullptr}
QTimer * pollShutdownTimer {nullptr}
const PlatformStyleplatformStyle {nullptr}
std::unique_ptr< QWidget > shutdownWindow
SplashScreenm_splash = nullptr
std::unique_ptr< interfaces::Nodem_node

Detailed Description

Main Bitcoin application object.

Definition at line 34 of file bitcoin.h.

Constructor & Destructor Documentation

◆ BitcoinApplication()

BitcoinApplication::BitcoinApplication ( )
explicit

Definition at line 200 of file bitcoin.cpp.

Here is the call graph for this function:

◆ ~BitcoinApplication()

BitcoinApplication::~BitcoinApplication ( )

Definition at line 221 of file bitcoin.cpp.

Member Function Documentation

◆ baseInitialize()

bool BitcoinApplication::baseInitialize ( )

Basic initialization, before starting initialization/shutdown thread. Return true on success.

Definition at line 287 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createNode()

void BitcoinApplication::createNode ( interfaces::Init & init)

Create or spawn node.

Definition at line 280 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createOptionsModel()

bool BitcoinApplication::createOptionsModel ( bool resetSettings)
nodiscard

Create options model.

Definition at line 238 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createSplashScreen()

void BitcoinApplication::createSplashScreen ( const NetworkStyle * networkStyle)

Create splash screen.

Definition at line 273 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createWindow()

void BitcoinApplication::createWindow ( const NetworkStyle * networkStyle)

Create main window.

Definition at line 260 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ event()

bool BitcoinApplication::event ( QEvent * e)
overrideprotected

Definition at line 460 of file bitcoin.cpp.

Here is the call graph for this function:

◆ getMainWinId()

WId BitcoinApplication::getMainWinId ( ) const

Get window identifier of QMainWindow (BitcoinGUI).

Definition at line 452 of file bitcoin.cpp.

Here is the caller graph for this function:

◆ handleNonFatalException

void BitcoinApplication::handleNonFatalException ( const QString & message)
slot

A helper function that shows a message box with details about a non-fatal exception.

Definition at line 442 of file bitcoin.cpp.

Here is the call graph for this function:

◆ handleRunawayException

void BitcoinApplication::handleRunawayException ( const QString & message)
slot

Handle runaway exceptions. Shows a message box with the problem and quits the program.

Definition at line 433 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initializeResult

void BitcoinApplication::initializeResult ( bool success,
interfaces::BlockAndHeaderTipInfo tip_info )
slot

Definition at line 379 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InitPruneSetting()

void BitcoinApplication::InitPruneSetting ( int64_t prune_MiB)

Initialize prune setting.

Definition at line 317 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ node()

interfaces::Node & BitcoinApplication::node ( ) const
inline

Definition at line 69 of file bitcoin.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ parameterSetup()

void BitcoinApplication::parameterSetup ( )

parameter interaction/setup based on rules

Definition at line 307 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ requestedInitialize

void BitcoinApplication::requestedInitialize ( )
signal
Here is the caller graph for this function:

◆ requestedShutdown

void BitcoinApplication::requestedShutdown ( )
signal
Here is the caller graph for this function:

◆ requestInitialize()

void BitcoinApplication::requestInitialize ( )

Request core initialization.

Definition at line 322 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ requestShutdown

void BitcoinApplication::requestShutdown ( )
slot

Request core shutdown.

Definition at line 329 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setupPlatformStyle()

void BitcoinApplication::setupPlatformStyle ( )

Setup platform style.

Definition at line 208 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ startThread()

void BitcoinApplication::startThread ( )
private

Definition at line 292 of file bitcoin.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ windowShown

void BitcoinApplication::windowShown ( BitcoinGUI * window)
signal
Here is the caller graph for this function:

Member Data Documentation

◆ clientModel

ClientModel* BitcoinApplication::clientModel {nullptr}
private

Definition at line 95 of file bitcoin.h.

◆ m_executor

std::optional<InitExecutor> BitcoinApplication::m_executor
private

Definition at line 93 of file bitcoin.h.

◆ m_node

std::unique_ptr<interfaces::Node> BitcoinApplication::m_node
private

Definition at line 105 of file bitcoin.h.

◆ m_splash

SplashScreen* BitcoinApplication::m_splash = nullptr
private

Definition at line 104 of file bitcoin.h.

◆ optionsModel

OptionsModel* BitcoinApplication::optionsModel {nullptr}
private

Definition at line 94 of file bitcoin.h.

◆ platformStyle

const PlatformStyle* BitcoinApplication::platformStyle {nullptr}
private

Definition at line 102 of file bitcoin.h.

◆ pollShutdownTimer

QTimer* BitcoinApplication::pollShutdownTimer {nullptr}
private

Definition at line 97 of file bitcoin.h.

◆ shutdownWindow

std::unique_ptr<QWidget> BitcoinApplication::shutdownWindow
private

Definition at line 103 of file bitcoin.h.

◆ window

BitcoinGUI* BitcoinApplication::window {nullptr}
private

Definition at line 96 of file bitcoin.h.


The documentation for this class was generated from the following files: