Monero
Loading...
Searching...
No Matches
tools::ringdb Class Reference

#include <ringdb.h>

Inheritance diagram for tools::ringdb:
Collaboration diagram for tools::ringdb:

Public Member Functions

 ringdb (std::string filename, const std::string &genesis)
void close ()
 ~ringdb ()
bool add_rings (const crypto::chacha_key &chacha_key, const cryptonote::transaction_prefix &tx)
bool remove_rings (const crypto::chacha_key &chacha_key, const std::vector< crypto::key_image > &key_images)
bool remove_rings (const crypto::chacha_key &chacha_key, const cryptonote::transaction_prefix &tx)
bool get_ring (const crypto::chacha_key &chacha_key, const crypto::key_image &key_image, std::vector< uint64_t > &outs)
bool get_rings (const crypto::chacha_key &chacha_key, const std::vector< crypto::key_image > &key_images, std::vector< std::vector< uint64_t > > &all_outs)
bool set_ring (const crypto::chacha_key &chacha_key, const crypto::key_image &key_image, const std::vector< uint64_t > &outs, bool relative)
bool set_rings (const crypto::chacha_key &chacha_key, const std::vector< std::pair< crypto::key_image, std::vector< uint64_t > > > &rings, bool relative)
bool blackball (const std::pair< uint64_t, uint64_t > &output)
bool blackball (const std::vector< std::pair< uint64_t, uint64_t > > &outputs)
bool unblackball (const std::pair< uint64_t, uint64_t > &output)
bool blackballed (const std::pair< uint64_t, uint64_t > &output)
bool clear_blackballs ()

Private Member Functions

bool blackball_worker (const std::vector< std::pair< uint64_t, uint64_t > > &outputs, int op)

Private Attributes

std::string filename
MDB_envenv
MDB_dbi dbi_rings
MDB_dbi dbi_blackballs

Constructor & Destructor Documentation

◆ ringdb()

tools::ringdb::ringdb ( std::string filename,
const std::string & genesis )

◆ ~ringdb()

tools::ringdb::~ringdb ( )

Member Function Documentation

◆ add_rings()

bool tools::ringdb::add_rings ( const crypto::chacha_key & chacha_key,
const cryptonote::transaction_prefix & tx )

◆ blackball() [1/2]

bool tools::ringdb::blackball ( const std::pair< uint64_t, uint64_t > & output)

◆ blackball() [2/2]

bool tools::ringdb::blackball ( const std::vector< std::pair< uint64_t, uint64_t > > & outputs)

◆ blackball_worker()

bool tools::ringdb::blackball_worker ( const std::vector< std::pair< uint64_t, uint64_t > > & outputs,
int op )
private

◆ blackballed()

bool tools::ringdb::blackballed ( const std::pair< uint64_t, uint64_t > & output)

◆ clear_blackballs()

bool tools::ringdb::clear_blackballs ( )

◆ close()

void tools::ringdb::close ( )

◆ get_ring()

bool tools::ringdb::get_ring ( const crypto::chacha_key & chacha_key,
const crypto::key_image & key_image,
std::vector< uint64_t > & outs )

◆ get_rings()

bool tools::ringdb::get_rings ( const crypto::chacha_key & chacha_key,
const std::vector< crypto::key_image > & key_images,
std::vector< std::vector< uint64_t > > & all_outs )

◆ remove_rings() [1/2]

bool tools::ringdb::remove_rings ( const crypto::chacha_key & chacha_key,
const cryptonote::transaction_prefix & tx )

◆ remove_rings() [2/2]

bool tools::ringdb::remove_rings ( const crypto::chacha_key & chacha_key,
const std::vector< crypto::key_image > & key_images )

◆ set_ring()

bool tools::ringdb::set_ring ( const crypto::chacha_key & chacha_key,
const crypto::key_image & key_image,
const std::vector< uint64_t > & outs,
bool relative )

◆ set_rings()

bool tools::ringdb::set_rings ( const crypto::chacha_key & chacha_key,
const std::vector< std::pair< crypto::key_image, std::vector< uint64_t > > > & rings,
bool relative )

◆ unblackball()

bool tools::ringdb::unblackball ( const std::pair< uint64_t, uint64_t > & output)

Member Data Documentation

◆ dbi_blackballs

MDB_dbi tools::ringdb::dbi_blackballs
private

◆ dbi_rings

MDB_dbi tools::ringdb::dbi_rings
private

◆ env

MDB_env* tools::ringdb::env
private

◆ filename

std::string tools::ringdb::filename
private

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