BSHA3  0.17.99
P2P Blockchain, based on Bitcoin
feebumper.h
Go to the documentation of this file.
1 // Copyright (c) 2017-2018 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_WALLET_FEEBUMPER_H
6 #define BITCOIN_WALLET_FEEBUMPER_H
7 
9 
10 class CWallet;
11 class CWalletTx;
12 class uint256;
13 class CCoinControl;
14 enum class FeeEstimateMode;
15 
16 namespace feebumper {
17 
18 enum class Result
19 {
20  OK,
25  MISC_ERROR,
26 };
27 
29 bool TransactionCanBeBumped(const CWallet* wallet, const uint256& txid);
30 
32 Result CreateTransaction(const CWallet* wallet,
33  const uint256& txid,
34  const CCoinControl& coin_control,
35  CAmount total_fee,
36  std::vector<std::string>& errors,
37  CAmount& old_fee,
38  CAmount& new_fee,
39  CMutableTransaction& mtx);
40 
44 bool SignTransaction(CWallet* wallet, CMutableTransaction& mtx);
45 
51  const uint256& txid,
52  CMutableTransaction&& mtx,
53  std::vector<std::string>& errors,
54  uint256& bumped_txid);
55 
56 } // namespace feebumper
57 
58 #endif // BITCOIN_WALLET_FEEBUMPER_H
Result CreateTransaction(const CWallet *wallet, const uint256 &txid, const CCoinControl &coin_control, CAmount total_fee, std::vector< std::string > &errors, CAmount &old_fee, CAmount &new_fee, CMutableTransaction &mtx)
Create bumpfee transaction.
Definition: feebumper.cpp:76
FeeEstimateMode
Definition: fees.h:52
Coin Control Features.
Definition: coincontrol.h:16
int64_t CAmount
Amount in satoshis (Can be negative)
Definition: amount.h:12
bool SignTransaction(CWallet *wallet, CMutableTransaction &mtx)
Sign the new transaction,.
Definition: feebumper.cpp:214
A transaction with a bunch of additional info that only the owner cares about.
Definition: wallet.h:295
bool TransactionCanBeBumped(const CWallet *wallet, const uint256 &txid)
Return whether transaction can be bumped.
Definition: feebumper.cpp:65
256-bit opaque blob.
Definition: uint256.h:122
Result CommitTransaction(CWallet *wallet, const uint256 &txid, CMutableTransaction &&mtx, std::vector< std::string > &errors, uint256 &bumped_txid)
Commit the bumpfee transaction.
Definition: feebumper.cpp:219
A CWallet is an extension of a keystore, which also maintains a set of transactions and balances...
Definition: wallet.h:599
A mutable version of CTransaction.
Definition: transaction.h:360