Electroneum
Public Member Functions | Public Attributes | Static Private Member Functions | Private Attributes | List of all members
cryptonote::transaction Class Reference

#include <cryptonote_basic.h>

Inheritance diagram for cryptonote::transaction:
Inheritance graph
[legend]
Collaboration diagram for cryptonote::transaction:
Collaboration graph
[legend]

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_blob_size_valid () const
 
void set_blob_size_valid (bool v) const
 
void set_hash (const crypto::hash &h)
 
void set_blob_size (size_t sz)
 
 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
 
size_t blob_size
 
bool pruned
 
std::atomic< unsigned int > unprunable_size
 
std::atomic< unsigned int > prefix_size
 
const unsigned int start_pos = getpos(ar)
 
 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_t > extra
 

Static Private Member Functions

static size_t get_signature_size (const txin_v &tx_in)
 

Private Attributes

std::atomic< boolhash_valid
 
std::atomic< boolblob_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

◆ 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)
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)
inline

◆ set_hash_valid()

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

◆ set_null()

void cryptonote::transaction::set_null ( )
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")

◆ 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

◆ 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 unsigned int cryptonote::transaction::start_pos = getpos(ar)

◆ unprunable_size

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

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