Bitcoin Core 30.99.0
P2P Digital Currency
transaction.h
Go to the documentation of this file.
1// Copyright (c) 2017-2022 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#ifndef BITCOIN_NODE_TRANSACTION_H
6#define BITCOIN_NODE_TRANSACTION_H
7
8#include <common/messages.h>
9#include <node/types.h>
10#include <policy/feerate.h>
12
13class CBlockIndex;
14class CTxMemPool;
15namespace Consensus {
16struct Params;
17}
18
19namespace node {
20class BlockManager;
21struct NodeContext;
22
29
35
53[[nodiscard]] TransactionError BroadcastTransaction(NodeContext& node,
55 std::string& err_string,
56 const CAmount& max_tx_fee,
57 TxBroadcast broadcast_method,
58 bool wait_callback);
59
73CTransactionRef GetTransaction(const CBlockIndex* const block_index, const CTxMemPool* const mempool, const Txid& hash, const BlockManager& blockman, uint256& hashBlock);
74} // namespace node
75
76#endif // BITCOIN_NODE_TRANSACTION_H
int64_t CAmount
Amount in satoshis (Can be negative)
Definition: amount.h:12
static constexpr CAmount COIN
The amount of satoshis in one BTC.
Definition: amount.h:15
const CChainParams & Params()
Return the currently selected parameters.
The block chain is a tree shaped structure starting with the genesis block at the root,...
Definition: chain.h:144
Fee rate in satoshis per virtualbyte: CAmount / vB the feerate is represented internally as FeeFrac.
Definition: feerate.h:35
CTxMemPool stores valid-according-to-the-current-best-chain transactions that may be included in the ...
Definition: txmempool.h:281
256-bit opaque blob.
Definition: uint256.h:196
is a home for simple string functions returning descriptive messages that are used in RPC and GUI int...
Transaction validation functions.
Definition: messages.h:21
static const CAmount DEFAULT_MAX_BURN_AMOUNT
Maximum burn value for sendrawtransaction, submitpackage, and testmempoolaccept RPC calls.
Definition: transaction.h:34
TxBroadcast
How to broadcast a local transaction.
Definition: types.h:106
TransactionError
Definition: types.h:25
static const CFeeRate DEFAULT_MAX_RAW_TX_FEE_RATE
Maximum fee rate for sendrawtransaction and testmempoolaccept RPC calls.
Definition: transaction.h:28
TransactionError BroadcastTransaction(NodeContext &node, const CTransactionRef tx, std::string &err_string, const CAmount &max_tx_fee, TxBroadcast broadcast_method, bool wait_callback)
Submit a transaction to the mempool and (optionally) relay it to all P2P peers.
Definition: transaction.cpp:34
CTransactionRef GetTransaction(const CBlockIndex *const block_index, const CTxMemPool *const mempool, const Txid &hash, const BlockManager &blockman, uint256 &hashBlock)
Return transaction with a given hash.
is a home for public enum and struct type definitions that are used internally by node code,...
std::shared_ptr< const CTransaction > CTransactionRef
Definition: transaction.h:423