Bitcoin Core  27.99.0
P2P Digital Currency
Public Slots | Signals | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
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. More...
 
void handleRunawayException (const QString &message)
 Handle runaway exceptions. Shows a message box with the problem and quits the program. More...
 
void handleNonFatalException (const QString &message)
 A helper function that shows a message box with details about a non-fatal exception. More...
 

Signals

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

Public Member Functions

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

Constructor & Destructor Documentation

◆ BitcoinApplication()

BitcoinApplication::BitcoinApplication ( )
explicit

Definition at line 224 of file bitcoin.cpp.

Here is the call graph for this function:

◆ ~BitcoinApplication()

BitcoinApplication::~BitcoinApplication ( )

Definition at line 245 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 311 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 304 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)

Create options model.

Definition at line 262 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 297 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 284 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 483 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 475 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 465 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 456 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 403 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 341 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 71 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 331 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 346 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 353 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 232 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 316 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 97 of file bitcoin.h.

◆ m_executor

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

Definition at line 95 of file bitcoin.h.

◆ m_node

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

Definition at line 107 of file bitcoin.h.

◆ m_splash

SplashScreen* BitcoinApplication::m_splash = nullptr
private

Definition at line 106 of file bitcoin.h.

◆ optionsModel

OptionsModel* BitcoinApplication::optionsModel {nullptr}
private

Definition at line 96 of file bitcoin.h.

◆ platformStyle

const PlatformStyle* BitcoinApplication::platformStyle {nullptr}
private

Definition at line 104 of file bitcoin.h.

◆ pollShutdownTimer

QTimer* BitcoinApplication::pollShutdownTimer {nullptr}
private

Definition at line 99 of file bitcoin.h.

◆ shutdownWindow

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

Definition at line 105 of file bitcoin.h.

◆ window

BitcoinGUI* BitcoinApplication::window {nullptr}
private

Definition at line 98 of file bitcoin.h.


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