Monero
Loading...
Searching...
No Matches
cryptonote::transaction Class Reference

#include <cryptonote_basic.h>

Inheritance diagram for cryptonote::transaction:
Collaboration diagram for cryptonote::transaction:

Public Member Functions

 transaction ()
 transaction (const transaction &t)
transactionoperator= (const transaction &t)
virtual ~transaction ()
void set_null ()
void invalidate_hashes ()
bool is_hash_valid () const
void set_hash_valid (bool v) const
bool is_prunable_hash_valid () const
void set_prunable_hash_valid (bool v) const
bool is_blob_size_valid () const
void set_blob_size_valid (bool v) const
void set_hash (const crypto::hash &h) const
void set_prunable_hash (const crypto::hash &h) const
void set_blob_size (size_t sz) const
 if (!typename Archive< W >::is_saving())
 if (std::is_same< Archive< W >, binary_archive< W > >()) prefix_size
 if (version==1)
 if (!vin.empty())
 if (!typename Archive< W >::is_saving()) pruned
template<bool W, template< bool > class Archive>
bool serialize_base (Archive< W > &ar)
Public Member Functions inherited from cryptonote::transaction_prefix
 if (version==0||CURRENT_TRANSACTION_VERSION< version) return false
 transaction_prefix ()
void set_null ()

Public Attributes

std::vector< std::vector< crypto::signature > > signatures
rct::rctSig rct_signatures
crypto::hash hash
crypto::hash prunable_hash
size_t blob_size
bool pruned
std::atomic< unsigned int > unprunable_size
std::atomic< unsigned int > prefix_size
const auto start_pos = ar.getpos()
 else
Public Attributes inherited from cryptonote::transaction_prefix
size_t version
uint64_t unlock_time
std::vector< txin_vvin
std::vector< tx_outvout
std::vector< uint8_textra

Static Private Member Functions

static size_t get_signature_size (const txin_v &tx_in)

Private Attributes

std::atomic< bool > hash_valid
std::atomic< bool > prunable_hash_valid
std::atomic< bool > blob_size_valid

Constructor & Destructor Documentation

◆ transaction() [1/2]

cryptonote::transaction::transaction ( )
inline

◆ transaction() [2/2]

cryptonote::transaction::transaction ( const transaction & t)
inline

◆ ~transaction()

cryptonote::transaction::~transaction ( )
inlinevirtual

Member Function Documentation

◆ get_signature_size()

size_t cryptonote::transaction::get_signature_size ( const txin_v & tx_in)
inlinestaticprivate

◆ if() [1/5]

cryptonote::transaction::if ( !typename Archive< W > ::is_saving())
inline

◆ if() [2/5]

cryptonote::transaction::if ( !typename Archive< W > ::is_saving())

◆ if() [3/5]

cryptonote::transaction::if ( !vin. empty())
inline

◆ if() [4/5]

cryptonote::transaction::if ( std::is_same< Archive< W >, binary_archive< W > > ())

◆ if() [5/5]

cryptonote::transaction::if ( version = = 1)
inline

◆ invalidate_hashes()

void cryptonote::transaction::invalidate_hashes ( )
inline

◆ is_blob_size_valid()

bool cryptonote::transaction::is_blob_size_valid ( ) const
inline

◆ is_hash_valid()

bool cryptonote::transaction::is_hash_valid ( ) const
inline

◆ is_prunable_hash_valid()

bool cryptonote::transaction::is_prunable_hash_valid ( ) const
inline

◆ operator=()

transaction & cryptonote::transaction::operator= ( const transaction & t)
inline

◆ serialize_base()

template<bool W, template< bool > class Archive>
bool cryptonote::transaction::serialize_base ( Archive< W > & ar)
inline

◆ set_blob_size()

void cryptonote::transaction::set_blob_size ( size_t sz) const
inline

◆ set_blob_size_valid()

void cryptonote::transaction::set_blob_size_valid ( bool v) const
inline

◆ set_hash()

void cryptonote::transaction::set_hash ( const crypto::hash & h) const
inline

◆ set_hash_valid()

void cryptonote::transaction::set_hash_valid ( bool v) const
inline

◆ set_null()

void cryptonote::transaction::set_null ( )
inline

◆ set_prunable_hash()

void cryptonote::transaction::set_prunable_hash ( const crypto::hash & h) const
inline

◆ set_prunable_hash_valid()

void cryptonote::transaction::set_prunable_hash_valid ( bool v) const
inline

Member Data Documentation

◆ blob_size

size_t cryptonote::transaction::blob_size
mutable

◆ blob_size_valid

std::atomic<bool> cryptonote::transaction::blob_size_valid
mutableprivate

◆ else

cryptonote::transaction::else
Initial value:
{
ar.tag("rct_signatures")
binary_archive< false > ar
Definition cold-outputs.cpp:54

◆ hash

crypto::hash cryptonote::transaction::hash
mutable

◆ hash_valid

std::atomic<bool> cryptonote::transaction::hash_valid
mutableprivate

◆ prefix_size

std::atomic<unsigned int> cryptonote::transaction::prefix_size

◆ prunable_hash

crypto::hash cryptonote::transaction::prunable_hash
mutable

◆ prunable_hash_valid

std::atomic<bool> cryptonote::transaction::prunable_hash_valid
mutableprivate

◆ pruned

bool cryptonote::transaction::pruned

◆ rct_signatures

rct::rctSig cryptonote::transaction::rct_signatures

◆ signatures

std::vector<std::vector<crypto::signature> > cryptonote::transaction::signatures

◆ start_pos

const auto cryptonote::transaction::start_pos = ar.getpos()

◆ unprunable_size

std::atomic<unsigned int> cryptonote::transaction::unprunable_size

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