src/account/EscrowReleaseTransaction.hpp¶
Declaration of the EscrowReleaseTransaction class.
Namespaces¶
| Name |
|---|
| sgns |
Classes¶
| Name | |
|---|---|
| class | sgns::EscrowReleaseTransaction Represents a transaction used to release funds from an escrow. |
Source code¶
#ifndef _ESCROW_RELEASE_TRANSACTION_HPP_
#define _ESCROW_RELEASE_TRANSACTION_HPP_
#include "account/IGeniusTransactions.hpp"
#include "account/UTXOStructs.hpp"
namespace sgns
{
class EscrowReleaseTransaction final : public IGeniusTransactions
{
public:
static EscrowReleaseTransaction New( UTXOTxParameters params,
uint64_t release_amount,
std::string release_address,
std::string escrow_source,
std::string original_escrow_hash,
SGTransaction::DAGStruct dag );
static std::shared_ptr<EscrowReleaseTransaction> DeSerializeByteVector( const std::vector<uint8_t> &data );
~EscrowReleaseTransaction() override = default;
std::vector<uint8_t> SerializeByteVector() override;
UTXOTxParameters GetUTXOParameters() const;
uint64_t GetReleaseAmount() const;
std::string GetReleaseAddress() const;
std::string GetEscrowSource() const;
std::string GetOriginalEscrowHash() const;
std::string GetTransactionSpecificPath() const override;
std::unordered_set<std::string> GetTopics() const override;
private:
EscrowReleaseTransaction( UTXOTxParameters params,
uint64_t release_amount,
std::string release_address,
std::string escrow_source,
std::string original_escrow_hash,
SGTransaction::DAGStruct dag );
UTXOTxParameters utxo_params_;
uint64_t release_amount_;
std::string release_address_;
std::string escrow_source_;
std::string original_escrow_hash_;
static bool Register()
{
RegisterDeserializer( "escrow-release", &EscrowReleaseTransaction::DeSerializeByteVector );
return true;
}
static inline bool registered_ = Register();
};
}
#endif // _ESCROW_RELEASE_TRANSACTION_HPP_
Updated on 2026-03-04 at 13:10:44 -0800