20 #ifndef RIPPLE_PROTOCOL_STTX_H_INCLUDED
21 #define RIPPLE_PROTOCOL_STTX_H_INCLUDED
23 #include <ripple/protocol/PublicKey.h>
24 #include <ripple/protocol/STObject.h>
25 #include <ripple/protocol/SecretKey.h>
26 #include <ripple/protocol/TxFormats.h>
27 #include <boost/container/flat_set.hpp>
28 #include <boost/logic/tribool.hpp>
85 return emplace(n, buf, std::move(*
this));
127 boost::container::flat_set<AccountID>
TxType getTxnType() const
std::pair< bool, std::string > checkMultiSign(RequireFullyCanonicalSig requireCanonicalSig) const
STTx & operator=(STTx const &other)=delete
std::string getMetaSQL(std::uint32_t inLedger, std::string const &escapedMetaData) const
Tracks the number of instances of an object.
std::pair< bool, std::string > checkSign(RequireFullyCanonicalSig requireCanonicalSig) const
const SF_Blob sfSigningPubKey(access, STI_VL, 3, "SigningPubKey")
const SF_U32 sfSequence(access, STI_UINT32, 4, "Sequence")
uint256 getSigningHash() const
static std::string const & getMetaSQLInsertReplaceHeader()
Blob getFieldVL(SField const &field) const
void setSequence(std::uint32_t seq)
static STBase * emplace(std::size_t n, void *buf, T &&val)
bool isPseudoTx(STObject const &tx)
Check whether a transaction is a pseudo-transaction.
static char const * getCountedObjectName()
bool passesLocalChecks(STObject const &st, std::string &reason)
STBase * copy(std::size_t n, void *buf) const override
std::string getFullText() const override
Blob getSigningPubKey() const
std::pair< bool, std::string > checkSingleSign(RequireFullyCanonicalSig requireCanonicalSig) const
void sign(PublicKey const &publicKey, SecretKey const &secretKey)
Json::Value getJson(JsonOptions options) const override
std::uint32_t getSequence() const
uint256 getTransactionID() const
TxType
Transaction type identifiers.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
std::shared_ptr< STTx const > sterilize(STTx const &stx)
Sterilize a transaction.
static const std::size_t maxMultiSigners
A type which can be exported to a well known binary format.
Blob getSignature() const
boost::container::flat_set< AccountID > getMentionedAccounts() const
static const std::size_t minMultiSigners
STBase * move(std::size_t n, void *buf) override
STTx(SerialIter &&sit) noexcept(false)
std::uint32_t getFieldU32(SField const &field) const
void setFieldU32(SField const &field, std::uint32_t)
RequireFullyCanonicalSig
Check the signature.
SerializedTypeID getSType() const override