Bitcoin Core  0.21.1
P2P Digital Currency
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
TransactionRecord Class Reference

UI model for a transaction. More...

#include <transactionrecord.h>

Collaboration diagram for TransactionRecord:
[legend]

Public Types

enum  Type {
  Other, Generated, SendToAddress, SendToOther,
  RecvWithAddress, RecvFromOther, SendToSelf
}
 

Public Member Functions

 TransactionRecord ()
 
 TransactionRecord (uint256 _hash, qint64 _time)
 
 TransactionRecord (uint256 _hash, qint64 _time, Type _type, const std::string &_address, const CAmount &_debit, const CAmount &_credit)
 
QString getTxHash () const
 Return the unique identifier for this transaction (part) More...
 
int getOutputIndex () const
 Return the output index of the subtransaction. More...
 
void updateStatus (const interfaces::WalletTxStatus &wtx, const uint256 &block_hash, int numBlocks, int64_t block_time)
 Update status from core wallet tx. More...
 
bool statusUpdateNeeded (const uint256 &block_hash) const
 Return whether a status update is needed. More...
 

Static Public Member Functions

static bool showTransaction ()
 Decompose CWallet transaction to model transaction records. More...
 
static QList< TransactionRecorddecomposeTransaction (const interfaces::WalletTx &wtx)
 

Public Attributes

int idx
 Subtransaction index, for sort key. More...
 
TransactionStatus status
 Status: can change with block chain update. More...
 
bool involvesWatchAddress
 Whether the transaction was sent/received with a watch-only address. More...
 
Immutable transaction attributes
uint256 hash
 
qint64 time
 
Type type
 
std::string address
 
CAmount debit
 
CAmount credit
 

Static Public Attributes

static const int RecommendedNumConfirmations = 6
 Number of confirmation recommended for accepting a transaction. More...
 

Detailed Description

UI model for a transaction.

A core transaction can be represented by multiple UI transactions if it has multiple outputs.

Definition at line 72 of file transactionrecord.h.

Member Enumeration Documentation

Enumerator
Other 
Generated 
SendToAddress 
SendToOther 
RecvWithAddress 
RecvFromOther 
SendToSelf 

Definition at line 75 of file transactionrecord.h.

Constructor & Destructor Documentation

TransactionRecord::TransactionRecord ( )
inline

Definition at line 89 of file transactionrecord.h.

Here is the caller graph for this function:

TransactionRecord::TransactionRecord ( uint256  _hash,
qint64  _time 
)
inline

Definition at line 94 of file transactionrecord.h.

TransactionRecord::TransactionRecord ( uint256  _hash,
qint64  _time,
Type  _type,
const std::string &  _address,
const CAmount _debit,
const CAmount _credit 
)
inline

Definition at line 100 of file transactionrecord.h.

Member Function Documentation

QList< TransactionRecord > TransactionRecord::decomposeTransaction ( const interfaces::WalletTx wtx)
static

Definition at line 28 of file transactionrecord.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

int TransactionRecord::getOutputIndex ( ) const

Return the output index of the subtransaction.

Definition at line 246 of file transactionrecord.cpp.

Here is the caller graph for this function:

QString TransactionRecord::getTxHash ( ) const

Return the unique identifier for this transaction (part)

Definition at line 241 of file transactionrecord.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

bool TransactionRecord::showTransaction ( )
static

Decompose CWallet transaction to model transaction records.

Definition at line 18 of file transactionrecord.cpp.

Here is the caller graph for this function:

bool TransactionRecord::statusUpdateNeeded ( const uint256 block_hash) const

Return whether a status update is needed.

Definition at line 235 of file transactionrecord.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void TransactionRecord::updateStatus ( const interfaces::WalletTxStatus wtx,
const uint256 block_hash,
int  numBlocks,
int64_t  block_time 
)

Update status from core wallet tx.

Definition at line 164 of file transactionrecord.cpp.

Here is the caller graph for this function:

Member Data Documentation

std::string TransactionRecord::address

Definition at line 118 of file transactionrecord.h.

CAmount TransactionRecord::credit

Definition at line 120 of file transactionrecord.h.

CAmount TransactionRecord::debit

Definition at line 119 of file transactionrecord.h.

uint256 TransactionRecord::hash

Definition at line 115 of file transactionrecord.h.

int TransactionRecord::idx

Subtransaction index, for sort key.

Definition at line 124 of file transactionrecord.h.

bool TransactionRecord::involvesWatchAddress

Whether the transaction was sent/received with a watch-only address.

Definition at line 130 of file transactionrecord.h.

const int TransactionRecord::RecommendedNumConfirmations = 6
static

Number of confirmation recommended for accepting a transaction.

Definition at line 87 of file transactionrecord.h.

TransactionStatus TransactionRecord::status

Status: can change with block chain update.

Definition at line 127 of file transactionrecord.h.

qint64 TransactionRecord::time

Definition at line 116 of file transactionrecord.h.

Type TransactionRecord::type

Definition at line 117 of file transactionrecord.h.


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