Bitcoin Core  22.99.0
P2P Digital Currency
Public Member Functions | Public Attributes | List of all members
CoinEligibilityFilter Struct Reference

Parameters for filtering which OutputGroups we may use in coin selection. More...

#include <coinselection.h>

Public Member Functions

 CoinEligibilityFilter (int conf_mine, int conf_theirs, uint64_t max_ancestors)
 
 CoinEligibilityFilter (int conf_mine, int conf_theirs, uint64_t max_ancestors, uint64_t max_descendants)
 
 CoinEligibilityFilter (int conf_mine, int conf_theirs, uint64_t max_ancestors, uint64_t max_descendants, bool include_partial)
 

Public Attributes

const int conf_mine
 Minimum number of confirmations for outputs that we sent to ourselves. More...
 
const int conf_theirs
 Minimum number of confirmations for outputs received from a different wallet. More...
 
const uint64_t max_ancestors
 Maximum number of unconfirmed ancestors aggregated across all UTXOs in an OutputGroup. More...
 
const uint64_t max_descendants
 Maximum number of descendants that a single UTXO in the OutputGroup may have. More...
 
const bool m_include_partial_groups {false}
 When avoid_reuse=true and there are full groups (OUTPUT_GROUP_MAX_ENTRIES), whether or not to use any partial groups. More...
 

Detailed Description

Parameters for filtering which OutputGroups we may use in coin selection.

We start by being very selective and requiring multiple confirmations and then get more permissive if we cannot fund the transaction.

Definition at line 118 of file coinselection.h.

Constructor & Destructor Documentation

◆ CoinEligibilityFilter() [1/3]

CoinEligibilityFilter::CoinEligibilityFilter ( int  conf_mine,
int  conf_theirs,
uint64_t  max_ancestors 
)
inline

Definition at line 132 of file coinselection.h.

◆ CoinEligibilityFilter() [2/3]

CoinEligibilityFilter::CoinEligibilityFilter ( int  conf_mine,
int  conf_theirs,
uint64_t  max_ancestors,
uint64_t  max_descendants 
)
inline

Definition at line 133 of file coinselection.h.

◆ CoinEligibilityFilter() [3/3]

CoinEligibilityFilter::CoinEligibilityFilter ( int  conf_mine,
int  conf_theirs,
uint64_t  max_ancestors,
uint64_t  max_descendants,
bool  include_partial 
)
inline

Definition at line 134 of file coinselection.h.

Member Data Documentation

◆ conf_mine

const int CoinEligibilityFilter::conf_mine

Minimum number of confirmations for outputs that we sent to ourselves.

We may use unconfirmed UTXOs sent from ourselves, e.g. change outputs.

Definition at line 122 of file coinselection.h.

◆ conf_theirs

const int CoinEligibilityFilter::conf_theirs

Minimum number of confirmations for outputs received from a different wallet.

Definition at line 124 of file coinselection.h.

◆ m_include_partial_groups

const bool CoinEligibilityFilter::m_include_partial_groups {false}

When avoid_reuse=true and there are full groups (OUTPUT_GROUP_MAX_ENTRIES), whether or not to use any partial groups.

Definition at line 130 of file coinselection.h.

◆ max_ancestors

const uint64_t CoinEligibilityFilter::max_ancestors

Maximum number of unconfirmed ancestors aggregated across all UTXOs in an OutputGroup.

Definition at line 126 of file coinselection.h.

◆ max_descendants

const uint64_t CoinEligibilityFilter::max_descendants

Maximum number of descendants that a single UTXO in the OutputGroup may have.

Definition at line 128 of file coinselection.h.


The documentation for this struct was generated from the following file: