PIVX Core  5.6.99
P2P Digital Currency
Classes | Typedefs | Enumerations | Functions
transaction.h File Reference
#include "amount.h"
#include "memusage.h"
#include "netaddress.h"
#include "optional.h"
#include "script/script.h"
#include "serialize.h"
#include "uint256.h"
#include "sapling/sapling_transaction.h"
#include <atomic>
#include <list>
Include dependency graph for transaction.h:

Go to the source code of this file.

Classes

class  BaseOutPoint
 An outpoint - a combination of a transaction hash and an index n into its vout. More...
 
class  COutPoint
 An outpoint - a combination of a transaction hash and an index n into its vout. More...
 
class  SaplingOutPoint
 An outpoint - a combination of a transaction hash and an index n into its sapling output description (vShieldedOutput) More...
 
class  CTxIn
 An input of a transaction. More...
 
class  CTxOut
 An output of a transaction. More...
 
class  CTransaction
 The basic transaction that is broadcasted on the network and contained in blocks. More...
 
struct  CMutableTransaction
 A mutable version of CTransaction. More...
 

Typedefs

typedef std::shared_ptr< const CTransactionCTransactionRef
 

Enumerations

enum  SigVersion { SIGVERSION_BASE = 0 , SIGVERSION_SAPLING = 1 }
 

Functions

template<typename Stream , typename TxType >
void UnserializeTransaction (TxType &tx, Stream &s)
 Transaction serialization format: More...
 
template<typename Stream , typename TxType >
void SerializeTransaction (const TxType &tx, Stream &s)
 
template<typename T >
bool GetTxPayload (const std::vector< unsigned char > &payload, T &obj)
 
template<typename T >
bool GetTxPayload (const CMutableTransaction &tx, T &obj)
 
template<typename T >
bool GetTxPayload (const CTransaction &tx, T &obj)
 
template<typename T >
void SetTxPayload (CMutableTransaction &tx, const T &payload)
 

Typedef Documentation

◆ CTransactionRef

typedef std::shared_ptr<const CTransaction> CTransactionRef

Definition at line 456 of file transaction.h.

Enumeration Type Documentation

◆ SigVersion

enum SigVersion
Enumerator
SIGVERSION_BASE 
SIGVERSION_SAPLING 

Definition at line 25 of file transaction.h.

Function Documentation

◆ GetTxPayload() [1/3]

template<typename T >
bool GetTxPayload ( const CMutableTransaction tx,
T obj 
)
inline

Definition at line 475 of file transaction.h.

Here is the call graph for this function:

◆ GetTxPayload() [2/3]

template<typename T >
bool GetTxPayload ( const CTransaction tx,
T obj 
)
inline

Definition at line 480 of file transaction.h.

Here is the call graph for this function:

◆ GetTxPayload() [3/3]

template<typename T >
bool GetTxPayload ( const std::vector< unsigned char > &  payload,
T obj 
)
inline

Definition at line 464 of file transaction.h.

Here is the caller graph for this function:

◆ SerializeTransaction()

template<typename Stream , typename TxType >
void SerializeTransaction ( const TxType &  tx,
Stream &  s 
)
inline

Definition at line 226 of file transaction.h.

Here is the caller graph for this function:

◆ SetTxPayload()

template<typename T >
void SetTxPayload ( CMutableTransaction tx,
const T payload 
)

Definition at line 486 of file transaction.h.

Here is the caller graph for this function:

◆ UnserializeTransaction()

template<typename Stream , typename TxType >
void UnserializeTransaction ( TxType &  tx,
Stream &  s 
)
inline

Transaction serialization format:

  • int32_t nVersion
  • std::vector<CTxIn> vin
  • std::vector<CTxOut> vout
  • uint32_t nLockTime
  • Optional<SaplingTxData> sapData
  • Optional<std::vector<uint8_t>> extraPayload

Definition at line 208 of file transaction.h.

Here is the caller graph for this function: