TARAXA
taraxa::net::rpc::eth::Watches Class Reference

#include <watches.hpp>

Collaboration diagram for taraxa::net::rpc::eth::Watches:

Public Member Functions

template<typename Visitor >
auto visit (WatchType type, Visitor &&visitor)
 
 Watches (WatchesConfig const &_cfg)
 
 ~Watches ()
 
 Watches (const Watches &)=delete
 
 Watches (Watches &&)=delete
 
Watchesoperator= (const Watches &)=delete
 
Watchesoperator= (Watches &&)=delete
 
template<typename Visitor >
auto visit_by_id (WatchID watch_id, Visitor &&visitor)
 

Public Attributes

WatchesConfig const cfg_
 
WatchGroup< WatchType::new_blocks, h256 > const new_blocks_ {cfg_}
 
WatchGroup< WatchType::new_transactions, h256 > const new_transactions_ {cfg_}
 
WatchGroup< WatchType::logs, std::pair< ExtendedTransactionLocation const &, TransactionReceipt const & >, LocalisedLogEntry, LogFilter > const logs_
 

Private Attributes

std::condition_variable watch_cleaner_wait_cv_
 
std::thread watch_cleaner_
 
std::atomic< bool > destructor_called_ = false
 

Constructor & Destructor Documentation

◆ Watches() [1/3]

taraxa::net::rpc::eth::Watches::Watches ( WatchesConfig const &  _cfg)

◆ ~Watches()

taraxa::net::rpc::eth::Watches::~Watches ( )

◆ Watches() [2/3]

taraxa::net::rpc::eth::Watches::Watches ( const Watches )
delete

◆ Watches() [3/3]

taraxa::net::rpc::eth::Watches::Watches ( Watches &&  )
delete

Member Function Documentation

◆ operator=() [1/2]

Watches& taraxa::net::rpc::eth::Watches::operator= ( const Watches )
delete

◆ operator=() [2/2]

Watches& taraxa::net::rpc::eth::Watches::operator= ( Watches &&  )
delete

◆ visit()

template<typename Visitor >
auto taraxa::net::rpc::eth::Watches::visit ( WatchType  type,
Visitor &&  visitor 
)
inline

◆ visit_by_id()

template<typename Visitor >
auto taraxa::net::rpc::eth::Watches::visit_by_id ( WatchID  watch_id,
Visitor &&  visitor 
)
inline

Member Data Documentation

◆ cfg_

WatchesConfig const taraxa::net::rpc::eth::Watches::cfg_

◆ destructor_called_

std::atomic<bool> taraxa::net::rpc::eth::Watches::destructor_called_ = false
private

◆ logs_

WatchGroup<WatchType::logs, std::pair<ExtendedTransactionLocation const&, TransactionReceipt const&>, LocalisedLogEntry, LogFilter> const taraxa::net::rpc::eth::Watches::logs_
Initial value:
{
[](auto const& log_filter, auto const& input, auto const& do_update) {
auto const& [trx_loc, receipt] = input;
log_filter.match_one(trx_loc, receipt, do_update);
},
}
WatchesConfig const cfg_
Definition: watches.hpp:144

◆ new_blocks_

WatchGroup<WatchType::new_blocks, h256> const taraxa::net::rpc::eth::Watches::new_blocks_ {cfg_}

◆ new_transactions_

WatchGroup<WatchType::new_transactions, h256> const taraxa::net::rpc::eth::Watches::new_transactions_ {cfg_}

◆ watch_cleaner_

std::thread taraxa::net::rpc::eth::Watches::watch_cleaner_
private

◆ watch_cleaner_wait_cv_

std::condition_variable taraxa::net::rpc::eth::Watches::watch_cleaner_wait_cv_
private

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