Bitcoin
Public Member Functions | Private Member Functions | Private Attributes | List of all members
anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider Class Referencefinal
Inheritance diagram for anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider:
anonymous_namespace{descriptor.cpp}::PubkeyProvider

Public Member Functions

 BIP32PubkeyProvider (const CExtPubKey &extkey, KeyPath path, DeriveType derive)
 
bool IsRange () const override
 
size_t GetSize () const override
 
bool GetPubKey (int pos, const SigningProvider &arg, CPubKey *key, KeyOriginInfo &info) const override
 
std::string ToString () const override
 
bool ToPrivateString (const SigningProvider &arg, std::string &out) const override
 
bool GetPrivKey (int pos, const SigningProvider &arg, CKey &key) const override
 
- Public Member Functions inherited from anonymous_namespace{descriptor.cpp}::PubkeyProvider
virtual ~PubkeyProvider ()=default
 

Private Member Functions

bool GetExtKey (const SigningProvider &arg, CExtKey &ret) const
 
bool IsHardened () const
 

Private Attributes

CExtPubKey m_extkey
 
KeyPath m_path
 
DeriveType m_derive
 

Detailed Description

An object representing a parsed extended public key in a descriptor.

Constructor & Destructor Documentation

◆ BIP32PubkeyProvider()

anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::BIP32PubkeyProvider ( const CExtPubKey extkey,
KeyPath  path,
DeriveType  derive 
)
inline

Member Function Documentation

◆ GetExtKey()

bool anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::GetExtKey ( const SigningProvider arg,
CExtKey ret 
) const
inlineprivate

◆ GetPrivKey()

bool anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::GetPrivKey ( int  pos,
const SigningProvider arg,
CKey key 
) const
inlineoverridevirtual

Derive a private key, if private data is available in arg.

Implements anonymous_namespace{descriptor.cpp}::PubkeyProvider.

◆ GetPubKey()

bool anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::GetPubKey ( int  pos,
const SigningProvider arg,
CPubKey key,
KeyOriginInfo info 
) const
inlineoverridevirtual

Derive a public key. If key==nullptr, only info is desired.

Implements anonymous_namespace{descriptor.cpp}::PubkeyProvider.

◆ GetSize()

size_t anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::GetSize ( ) const
inlineoverridevirtual

Get the size of the generated public key(s) in bytes (33 or 65).

Implements anonymous_namespace{descriptor.cpp}::PubkeyProvider.

◆ IsHardened()

bool anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::IsHardened ( ) const
inlineprivate

◆ IsRange()

bool anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::IsRange ( ) const
inlineoverridevirtual

Whether this represent multiple public keys at different positions.

Implements anonymous_namespace{descriptor.cpp}::PubkeyProvider.

◆ ToPrivateString()

bool anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::ToPrivateString ( const SigningProvider arg,
std::string &  out 
) const
inlineoverridevirtual

Get the descriptor string form including private data (if available in arg).

Implements anonymous_namespace{descriptor.cpp}::PubkeyProvider.

◆ ToString()

std::string anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::ToString ( ) const
inlineoverridevirtual

Get the descriptor string form.

Implements anonymous_namespace{descriptor.cpp}::PubkeyProvider.

Member Data Documentation

◆ m_derive

DeriveType anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::m_derive
private

◆ m_extkey

CExtPubKey anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::m_extkey
private

◆ m_path

KeyPath anonymous_namespace{descriptor.cpp}::BIP32PubkeyProvider::m_path
private

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