Monero
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/containers.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 "cryptonote_basic/fwd.h"
Include dependency graph for cryptonote_basic.h:

Go to the source code of this file.

Classes

struct  cryptonote::txout_to_script
struct  cryptonote::txout_to_scripthash
struct  cryptonote::txout_to_key
struct  cryptonote::txout_to_tagged_key
struct  cryptonote::txin_gen
struct  cryptonote::txin_to_script
struct  cryptonote::txin_to_scripthash
struct  cryptonote::txin_to_key
struct  cryptonote::tx_out
class  cryptonote::transaction_prefix
class  cryptonote::transaction
struct  cryptonote::block_header
struct  cryptonote::block
struct  cryptonote::account_public_address
struct  cryptonote::keypair
struct  std::hash< cryptonote::account_public_address >

Namespaces

namespace  cryptonote
 Holds cryptonote related classes and helpers.
namespace  std

Typedefs

typedef std::vector< crypto::signaturecryptonote::ring_signature
typedef boost::variant< txin_gen, txin_to_script, txin_to_scripthash, txin_to_keycryptonote::txin_v
typedef boost::variant< txout_to_script, txout_to_scripthash, txout_to_key, txout_to_tagged_keycryptonote::txout_target_v

Functions

 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::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_tagged_key, 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::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_tagged_key, "tagged_key")
 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::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_tagged_key, "tagged_key")
 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/30]

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

◆ VARIANT_TAG() [2/30]

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

◆ VARIANT_TAG() [3/30]

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

◆ VARIANT_TAG() [4/30]

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

◆ VARIANT_TAG() [5/30]

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

◆ VARIANT_TAG() [6/30]

◆ VARIANT_TAG() [7/30]

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

◆ VARIANT_TAG() [8/30]

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

◆ VARIANT_TAG() [9/30]

◆ VARIANT_TAG() [10/30]

◆ VARIANT_TAG() [11/30]

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

◆ VARIANT_TAG() [12/30]

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

◆ VARIANT_TAG() [13/30]

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

◆ VARIANT_TAG() [14/30]

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

◆ VARIANT_TAG() [15/30]

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

◆ VARIANT_TAG() [16/30]

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

◆ VARIANT_TAG() [17/30]

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

◆ VARIANT_TAG() [18/30]

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

◆ VARIANT_TAG() [19/30]

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

◆ VARIANT_TAG() [20/30]

VARIANT_TAG ( debug_archive ,
cryptonote::txout_to_tagged_key ,
"tagged_key"  )

◆ VARIANT_TAG() [21/30]

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

◆ VARIANT_TAG() [22/30]

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

◆ VARIANT_TAG() [23/30]

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

◆ VARIANT_TAG() [24/30]

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

◆ VARIANT_TAG() [25/30]

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

◆ VARIANT_TAG() [26/30]

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

◆ VARIANT_TAG() [27/30]

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

◆ VARIANT_TAG() [28/30]

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

◆ VARIANT_TAG() [29/30]

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

◆ VARIANT_TAG() [30/30]

VARIANT_TAG ( json_archive ,
cryptonote::txout_to_tagged_key ,
"tagged_key"  )