Electroneum
Electroneum::SubaddressImpl Class Reference

#include <subaddress.h>

Inheritance diagram for Electroneum::SubaddressImpl:
Collaboration diagram for Electroneum::SubaddressImpl:

Public Member Functions

 SubaddressImpl (WalletImpl *wallet)
 
 ~SubaddressImpl ()
 
void refresh (uint32_t accountIndex) override
 
std::vector< SubaddressRow * > getAll () const override
 
void addRow (uint32_t accountIndex, const std::string &label) override
 
void setLabel (uint32_t accountIndex, uint32_t addressIndex, const std::string &label) override
 
- Public Member Functions inherited from Electroneum::Subaddress
virtual ~Subaddress ()=0
 

Detailed Description

Definition at line 36 of file subaddress.h.

Constructor & Destructor Documentation

◆ SubaddressImpl()

Electroneum::SubaddressImpl::SubaddressImpl ( WalletImpl wallet)

Definition at line 41 of file subaddress.cpp.

42  : m_wallet(wallet) {}

◆ ~SubaddressImpl()

Electroneum::SubaddressImpl::~SubaddressImpl ( )

Definition at line 86 of file subaddress.cpp.

87 {
88  clearRows();
89 }

Member Function Documentation

◆ addRow()

void Electroneum::SubaddressImpl::addRow ( uint32_t  accountIndex,
const std::string &  label 
)
overridevirtual

Implements Electroneum::Subaddress.

Definition at line 44 of file subaddress.cpp.

45 {
46  m_wallet->m_wallet->add_subaddress(accountIndex, label);
47  refresh(accountIndex);
48 }
void refresh(uint32_t accountIndex) override
Definition: subaddress.cpp:63
Here is the call graph for this function:

◆ getAll()

std::vector< SubaddressRow * > Electroneum::SubaddressImpl::getAll ( ) const
overridevirtual

Implements Electroneum::Subaddress.

Definition at line 81 of file subaddress.cpp.

82 {
83  return m_rows;
84 }

◆ refresh()

void Electroneum::SubaddressImpl::refresh ( uint32_t  accountIndex)
overridevirtual

Implements Electroneum::Subaddress.

Definition at line 63 of file subaddress.cpp.

64 {
65  LOG_PRINT_L2("Refreshing subaddress");
66 
67  clearRows();
68  for (size_t i = 0; i < m_wallet->m_wallet->get_num_subaddresses(accountIndex); ++i)
69  {
70  m_rows.push_back(new SubaddressRow(i, m_wallet->m_wallet->get_subaddress_as_str({accountIndex, (uint32_t)i}), m_wallet->m_wallet->get_subaddress_label({accountIndex, (uint32_t)i})));
71  }
72 }
#define LOG_PRINT_L2(x)
Definition: misc_log_ex.h:101
unsigned int uint32_t
Definition: stdint.h:126
Here is the caller graph for this function:

◆ setLabel()

void Electroneum::SubaddressImpl::setLabel ( uint32_t  accountIndex,
uint32_t  addressIndex,
const std::string &  label 
)
overridevirtual

Implements Electroneum::Subaddress.

Definition at line 50 of file subaddress.cpp.

51 {
52  try
53  {
54  m_wallet->m_wallet->set_subaddress_label({accountIndex, addressIndex}, label);
55  refresh(accountIndex);
56  }
57  catch (const std::exception& e)
58  {
59  LOG_ERROR("setLabel: " << e.what());
60  }
61 }
void refresh(uint32_t accountIndex) override
Definition: subaddress.cpp:63
#define LOG_ERROR(x)
Definition: misc_log_ex.h:98
Here is the call graph for this function:

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