Electroneum
Loading...
Searching...
No Matches
cryptonote_basic.h File Reference
#include <boost/variant.hpp>
#include <boost/functional/hash/hash.hpp>
#include <vector>
#include <cstring>
#include <sstream>
#include <atomic>
#include "serialization/variant.h"
#include "serialization/vector.h"
#include "serialization/binary_archive.h"
#include "serialization/json_archive.h"
#include "serialization/debug_archive.h"
#include "serialization/crypto.h"
#include "serialization/keyvalue_serialization.h"
#include "cryptonote_config.h"
#include "crypto/crypto.h"
#include "crypto/hash.h"
#include "misc_language.h"
#include "ringct/rctTypes.h"
#include "device/device.hpp"
#include "common/base58.h"
Include dependency graph for cryptonote_basic.h:

Go to the source code of this file.

Classes

struct  cryptonote::address_outputs
struct  cryptonote::address_txs
struct  cryptonote::account_public_address
struct  cryptonote::txout_to_script
struct  cryptonote::txout_to_scripthash
struct  cryptonote::txout_to_key
struct  cryptonote::txout_to_key_public
struct  cryptonote::txin_gen
struct  cryptonote::txin_to_script
struct  cryptonote::txin_to_scripthash
struct  cryptonote::txin_to_key
struct  cryptonote::txin_to_key_public
struct  cryptonote::tx_out
struct  cryptonote::validator_db
class  cryptonote::transaction_prefix
class  cryptonote::transaction
struct  cryptonote::block_header
struct  cryptonote::block
struct  cryptonote::keypair
struct  std::hash< cryptonote::account_public_address >

Namespaces

namespace  cryptonote
 Holds cryptonote related classes and helpers.
namespace  std
 STL namespace.

Typedefs

typedef std::vector< crypto::signaturecryptonote::ring_signature
typedef boost::variant< txin_gen, txin_to_script, txin_to_scripthash, txin_to_key, txin_to_key_publiccryptonote::txin_v
typedef boost::variant< txout_to_script, txout_to_scripthash, txout_to_key, txout_to_key_publiccryptonote::txout_target_v

Functions

template<>
unsigned int cryptonote::getpos (binary_archive< true > &ar)
template<>
unsigned int cryptonote::getpos (binary_archive< false > &ar)
 BLOB_SERIALIZER (cryptonote::txout_to_key)
 BLOB_SERIALIZER (cryptonote::txout_to_scripthash)
 VARIANT_TAG (binary_archive, cryptonote::txin_gen, 0xff)
 VARIANT_TAG (binary_archive, cryptonote::txin_to_script, 0x0)
 VARIANT_TAG (binary_archive, cryptonote::txin_to_scripthash, 0x1)
 VARIANT_TAG (binary_archive, cryptonote::txin_to_key, 0x2)
 VARIANT_TAG (binary_archive, cryptonote::txin_to_key_public, 0x3)
 VARIANT_TAG (binary_archive, cryptonote::txout_to_script, 0x0)
 VARIANT_TAG (binary_archive, cryptonote::txout_to_scripthash, 0x1)
 VARIANT_TAG (binary_archive, cryptonote::txout_to_key, 0x2)
 VARIANT_TAG (binary_archive, cryptonote::txout_to_key_public, 0x3)
 VARIANT_TAG (binary_archive, cryptonote::transaction, 0xcc)
 VARIANT_TAG (binary_archive, cryptonote::block, 0xbb)
 VARIANT_TAG (json_archive, cryptonote::txin_gen, "gen")
 VARIANT_TAG (json_archive, cryptonote::txin_to_script, "script")
 VARIANT_TAG (json_archive, cryptonote::txin_to_scripthash, "scripthash")
 VARIANT_TAG (json_archive, cryptonote::txin_to_key, "key")
 VARIANT_TAG (json_archive, cryptonote::txin_to_key_public, "public_input")
 VARIANT_TAG (json_archive, cryptonote::txout_to_script, "script")
 VARIANT_TAG (json_archive, cryptonote::txout_to_scripthash, "scripthash")
 VARIANT_TAG (json_archive, cryptonote::txout_to_key, "key")
 VARIANT_TAG (json_archive, cryptonote::txout_to_key_public, "public_output")
 VARIANT_TAG (json_archive, cryptonote::transaction, "tx")
 VARIANT_TAG (json_archive, cryptonote::block, "block")
 VARIANT_TAG (debug_archive, cryptonote::txin_gen, "gen")
 VARIANT_TAG (debug_archive, cryptonote::txin_to_script, "script")
 VARIANT_TAG (debug_archive, cryptonote::txin_to_scripthash, "scripthash")
 VARIANT_TAG (debug_archive, cryptonote::txin_to_key, "key")
 VARIANT_TAG (debug_archive, cryptonote::txin_to_key_public, "public_input")
 VARIANT_TAG (debug_archive, cryptonote::txout_to_script, "script")
 VARIANT_TAG (debug_archive, cryptonote::txout_to_scripthash, "scripthash")
 VARIANT_TAG (debug_archive, cryptonote::txout_to_key, "key")
 VARIANT_TAG (debug_archive, cryptonote::txout_to_key_public, "public_output")
 VARIANT_TAG (debug_archive, cryptonote::transaction, "tx")
 VARIANT_TAG (debug_archive, cryptonote::block, "block")

Function Documentation

◆ BLOB_SERIALIZER() [1/2]

BLOB_SERIALIZER ( cryptonote::txout_to_key )

◆ BLOB_SERIALIZER() [2/2]

BLOB_SERIALIZER ( cryptonote::txout_to_scripthash )

◆ VARIANT_TAG() [1/33]

VARIANT_TAG ( binary_archive ,
cryptonote::block ,
0xbb  )

◆ VARIANT_TAG() [2/33]

VARIANT_TAG ( binary_archive ,
cryptonote::transaction ,
0xcc  )

◆ VARIANT_TAG() [3/33]

VARIANT_TAG ( binary_archive ,
cryptonote::txin_gen ,
0xff  )

◆ VARIANT_TAG() [4/33]

VARIANT_TAG ( binary_archive ,
cryptonote::txin_to_key ,
0x2  )

◆ VARIANT_TAG() [5/33]

◆ VARIANT_TAG() [6/33]

VARIANT_TAG ( binary_archive ,
cryptonote::txin_to_script ,
0x0  )

◆ VARIANT_TAG() [7/33]

◆ VARIANT_TAG() [8/33]

VARIANT_TAG ( binary_archive ,
cryptonote::txout_to_key ,
0x2  )

◆ VARIANT_TAG() [9/33]

◆ VARIANT_TAG() [10/33]

VARIANT_TAG ( binary_archive ,
cryptonote::txout_to_script ,
0x0  )

◆ VARIANT_TAG() [11/33]

◆ VARIANT_TAG() [12/33]

VARIANT_TAG ( debug_archive ,
cryptonote::block ,
"block"  )

◆ VARIANT_TAG() [13/33]

VARIANT_TAG ( debug_archive ,
cryptonote::transaction ,
"tx"  )

◆ VARIANT_TAG() [14/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txin_gen ,
"gen"  )

◆ VARIANT_TAG() [15/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txin_to_key ,
"key"  )

◆ VARIANT_TAG() [16/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txin_to_key_public ,
"public_input"  )

◆ VARIANT_TAG() [17/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txin_to_script ,
"script"  )

◆ VARIANT_TAG() [18/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txin_to_scripthash ,
"scripthash"  )

◆ VARIANT_TAG() [19/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txout_to_key ,
"key"  )

◆ VARIANT_TAG() [20/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txout_to_key_public ,
"public_output"  )

◆ VARIANT_TAG() [21/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txout_to_script ,
"script"  )

◆ VARIANT_TAG() [22/33]

VARIANT_TAG ( debug_archive ,
cryptonote::txout_to_scripthash ,
"scripthash"  )

◆ VARIANT_TAG() [23/33]

VARIANT_TAG ( json_archive ,
cryptonote::block ,
"block"  )

◆ VARIANT_TAG() [24/33]

VARIANT_TAG ( json_archive ,
cryptonote::transaction ,
"tx"  )

◆ VARIANT_TAG() [25/33]

VARIANT_TAG ( json_archive ,
cryptonote::txin_gen ,
"gen"  )

◆ VARIANT_TAG() [26/33]

VARIANT_TAG ( json_archive ,
cryptonote::txin_to_key ,
"key"  )

◆ VARIANT_TAG() [27/33]

VARIANT_TAG ( json_archive ,
cryptonote::txin_to_key_public ,
"public_input"  )

◆ VARIANT_TAG() [28/33]

VARIANT_TAG ( json_archive ,
cryptonote::txin_to_script ,
"script"  )

◆ VARIANT_TAG() [29/33]

VARIANT_TAG ( json_archive ,
cryptonote::txin_to_scripthash ,
"scripthash"  )

◆ VARIANT_TAG() [30/33]

VARIANT_TAG ( json_archive ,
cryptonote::txout_to_key ,
"key"  )

◆ VARIANT_TAG() [31/33]

VARIANT_TAG ( json_archive ,
cryptonote::txout_to_key_public ,
"public_output"  )

◆ VARIANT_TAG() [32/33]

VARIANT_TAG ( json_archive ,
cryptonote::txout_to_script ,
"script"  )

◆ VARIANT_TAG() [33/33]

VARIANT_TAG ( json_archive ,
cryptonote::txout_to_scripthash ,
"scripthash"  )