Bitcoin Core  0.15.99
P2P Digital Currency
Public Slots | Signals | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
ClientModel Class Reference

Model for Bitcoin network client. More...

#include <clientmodel.h>

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

Public Slots

void updateTimer ()
 
void updateNumConnections (int numConnections)
 
void updateNetworkActive (bool networkActive)
 
void updateAlert ()
 
void updateBanlist ()
 

Signals

void numConnectionsChanged (int count)
 
void numBlocksChanged (int count, const QDateTime &blockDate, double nVerificationProgress, bool header)
 
void mempoolSizeChanged (long count, size_t mempoolSizeInBytes)
 
void networkActiveChanged (bool networkActive)
 
void alertsChanged (const QString &warnings)
 
void bytesChanged (quint64 totalBytesIn, quint64 totalBytesOut)
 
void message (const QString &title, const QString &message, unsigned int style)
 Fired when a message should be reported to the user. More...
 
void showProgress (const QString &title, int nProgress)
 

Public Member Functions

 ClientModel (OptionsModel *optionsModel, QObject *parent=0)
 
 ~ClientModel ()
 
OptionsModelgetOptionsModel ()
 
PeerTableModelgetPeerTableModel ()
 
BanTableModelgetBanTableModel ()
 
int getNumConnections (unsigned int flags=CONNECTIONS_ALL) const
 Return number of connections, default is in- and outbound (total) More...
 
int getNumBlocks () const
 
int getHeaderTipHeight () const
 
int64_t getHeaderTipTime () const
 
long getMempoolSize () const
 Return number of transactions in the mempool. More...
 
size_t getMempoolDynamicUsage () const
 Return the dynamic memory usage of the mempool. More...
 
quint64 getTotalBytesRecv () const
 
quint64 getTotalBytesSent () const
 
double getVerificationProgress (const CBlockIndex *tip) const
 
QDateTime getLastBlockDate () const
 
bool inInitialBlockDownload () const
 Return true if core is doing initial block download. More...
 
enum BlockSource getBlockSource () const
 Returns enum BlockSource of the current importing/syncing state. More...
 
bool getNetworkActive () const
 Return true if network activity in core is enabled. More...
 
void setNetworkActive (bool active)
 Toggle network activity state in core. More...
 
QString getStatusBarWarnings () const
 Return warnings to be displayed in status bar. More...
 
QString formatFullVersion () const
 
QString formatSubVersion () const
 
bool isReleaseVersion () const
 
QString formatClientStartupTime () const
 
QString dataDir () const
 

Public Attributes

std::atomic< int > cachedBestHeaderHeight
 
std::atomic< int64_t > cachedBestHeaderTime
 

Private Member Functions

void subscribeToCoreSignals ()
 
void unsubscribeFromCoreSignals ()
 

Private Attributes

OptionsModeloptionsModel
 
PeerTableModelpeerTableModel
 
BanTableModelbanTableModel
 
QTimer * pollTimer
 

Detailed Description

Model for Bitcoin network client.

Definition at line 38 of file clientmodel.h.

Constructor & Destructor Documentation

ClientModel::ClientModel ( OptionsModel optionsModel,
QObject *  parent = 0 
)
explicit

Definition at line 33 of file clientmodel.cpp.

Here is the call graph for this function:

ClientModel::~ClientModel ( )

Definition at line 51 of file clientmodel.cpp.

Here is the call graph for this function:

Member Function Documentation

void ClientModel::alertsChanged ( const QString &  warnings)
signal

Here is the caller graph for this function:

void ClientModel::bytesChanged ( quint64  totalBytesIn,
quint64  totalBytesOut 
)
signal

Here is the caller graph for this function:

QString ClientModel::dataDir ( ) const

Definition at line 244 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

QString ClientModel::formatClientStartupTime ( ) const

Definition at line 239 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

QString ClientModel::formatFullVersion ( ) const

Definition at line 224 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

QString ClientModel::formatSubVersion ( ) const

Definition at line 229 of file clientmodel.cpp.

Here is the caller graph for this function:

BanTableModel * ClientModel::getBanTableModel ( )

Definition at line 219 of file clientmodel.cpp.

Here is the caller graph for this function:

enum BlockSource ClientModel::getBlockSource ( ) const

Returns enum BlockSource of the current importing/syncing state.

Definition at line 177 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

int ClientModel::getHeaderTipHeight ( ) const

Definition at line 78 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

int64_t ClientModel::getHeaderTipTime ( ) const

Definition at line 92 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

QDateTime ClientModel::getLastBlockDate ( ) const

Definition at line 118 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

size_t ClientModel::getMempoolDynamicUsage ( ) const

Return the dynamic memory usage of the mempool.

Definition at line 133 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

long ClientModel::getMempoolSize ( ) const

Return number of transactions in the mempool.

Definition at line 128 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

bool ClientModel::getNetworkActive ( ) const

Return true if network activity in core is enabled.

Definition at line 196 of file clientmodel.cpp.

Here is the caller graph for this function:

int ClientModel::getNumBlocks ( ) const

Definition at line 72 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

int ClientModel::getNumConnections ( unsigned int  flags = CONNECTIONS_ALL) const

Return number of connections, default is in- and outbound (total)

Definition at line 56 of file clientmodel.cpp.

Here is the caller graph for this function:

OptionsModel * ClientModel::getOptionsModel ( )

Definition at line 209 of file clientmodel.cpp.

Here is the caller graph for this function:

PeerTableModel * ClientModel::getPeerTableModel ( )

Definition at line 214 of file clientmodel.cpp.

Here is the caller graph for this function:

QString ClientModel::getStatusBarWarnings ( ) const

Return warnings to be displayed in status bar.

Definition at line 204 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

quint64 ClientModel::getTotalBytesRecv ( ) const

Definition at line 104 of file clientmodel.cpp.

Here is the caller graph for this function:

quint64 ClientModel::getTotalBytesSent ( ) const

Definition at line 111 of file clientmodel.cpp.

Here is the caller graph for this function:

double ClientModel::getVerificationProgress ( const CBlockIndex tip) const

Definition at line 138 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

bool ClientModel::inInitialBlockDownload ( ) const

Return true if core is doing initial block download.

Definition at line 172 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

bool ClientModel::isReleaseVersion ( ) const

Definition at line 234 of file clientmodel.cpp.

void ClientModel::mempoolSizeChanged ( long  count,
size_t  mempoolSizeInBytes 
)
signal

Here is the caller graph for this function:

void ClientModel::message ( const QString &  title,
const QString &  message,
unsigned int  style 
)
signal

Fired when a message should be reported to the user.

void ClientModel::networkActiveChanged ( bool  networkActive)
signal

Here is the caller graph for this function:

void ClientModel::numBlocksChanged ( int  count,
const QDateTime &  blockDate,
double  nVerificationProgress,
bool  header 
)
signal
void ClientModel::numConnectionsChanged ( int  count)
signal

Here is the caller graph for this function:

void ClientModel::setNetworkActive ( bool  active)

Toggle network activity state in core.

Definition at line 189 of file clientmodel.cpp.

Here is the caller graph for this function:

void ClientModel::showProgress ( const QString &  title,
int  nProgress 
)
signal
void ClientModel::subscribeToCoreSignals ( )
private

Definition at line 316 of file clientmodel.cpp.

Here is the caller graph for this function:

void ClientModel::unsubscribeFromCoreSignals ( )
private

Definition at line 328 of file clientmodel.cpp.

Here is the caller graph for this function:

void ClientModel::updateAlert ( )
slot

Definition at line 167 of file clientmodel.cpp.

Here is the call graph for this function:

void ClientModel::updateBanlist ( )
slot

Definition at line 249 of file clientmodel.cpp.

Here is the call graph for this function:

void ClientModel::updateNetworkActive ( bool  networkActive)
slot

Definition at line 162 of file clientmodel.cpp.

void ClientModel::updateNumConnections ( int  numConnections)
slot

Definition at line 157 of file clientmodel.cpp.

void ClientModel::updateTimer ( )
slot

Definition at line 149 of file clientmodel.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

BanTableModel* ClientModel::banTableModel
private

Definition at line 90 of file clientmodel.h.

std::atomic<int> ClientModel::cachedBestHeaderHeight
mutable

Definition at line 84 of file clientmodel.h.

std::atomic<int64_t> ClientModel::cachedBestHeaderTime
mutable

Definition at line 85 of file clientmodel.h.

OptionsModel* ClientModel::optionsModel
private

Definition at line 88 of file clientmodel.h.

PeerTableModel* ClientModel::peerTableModel
private

Definition at line 89 of file clientmodel.h.

QTimer* ClientModel::pollTimer
private

Definition at line 92 of file clientmodel.h.


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