CatapultServer
v0.5.0.1 (Elephant)
|
Go to the documentation of this file.
28 #include <unordered_set>
30 namespace catapult {
namespace model {
87 const std::vector<BlockElement>& elements,
96 void ExtractTransactionInfos(std::vector<TransactionInfo>& transactionInfos,
const std::shared_ptr<const BlockElement>& pBlockElement);
100 const std::shared_ptr<const Transaction>& pTransaction,
TransactionInfo MakeTransactionInfo(const std::shared_ptr< const Transaction > &pTransaction, const TransactionElement &transactionElement)
Makes a transaction info by merging pTransaction and transactionElement.
Definition: Elements.cpp:103
std::function< bool(TArgs...)> predicate
A predicate function.
Definition: functions.h:31
Hash256 EntityHash
Entity hash.
Definition: Elements.h:66
const model::Block & Block
Block entity.
Definition: Elements.h:63
void ExtractEntityInfos(const BlockElement &element, WeakEntityInfos &entityInfos)
Extracts all entity infos from element into entityInfos.
Definition: Elements.cpp:88
Hash256 MerkleComponentHash
Modified hash that should be used as a hash in the merkle tree.
Definition: EntityInfo.h:131
constexpr BasicEntityType ToBasicEntityType(EntityType type)
Converts an entity type into a basic entity type.
Definition: EntityType.h:70
catapult::GenerationHash GenerationHash
Generation hash of the block.
Definition: Elements.h:69
const model::Transaction & Transaction
Transaction entity.
Definition: Elements.h:41
std::shared_ptr< const UnresolvedAddressSet > OptionalExtractedAddresses
Definition: Elements.h:51
std::vector< Hash256 > SubCacheMerkleRoots
Merkle roots for all sub caches at the current block.
Definition: Elements.h:72
A transaction and its associated metadata.
Definition: EntityInfo.h:104
std::vector< TransactionElement > Transactions
Transaction elements.
Definition: Elements.h:75
BlockElement(const model::Block &block)
Creates a block element around block.
Definition: Elements.h:58
void ExtractTransactionInfos(std::vector< TransactionInfo > &transactionInfos, const std::shared_ptr< const BlockElement > &pBlockElement)
Definition: Elements.cpp:93
predicate< BasicEntityType, Timestamp, const Hash256 & > MatchingEntityPredicate
Predicate for evaluating a timestamp, a hash and an entity type.
Definition: Elements.h:83
void ExtractMatchingEntityInfos(const std::vector< BlockElement > &elements, WeakEntityInfos &entityInfos, const MatchingEntityPredicate &predicate)
Extracts all entity infos for which predicate returns true from elements into entityInfos.
Definition: Elements.cpp:79
const BlockHeader * m_pActiveBlockHeader
Definition: Elements.cpp:66
Hash256 EntityHash
Entity hash.
Definition: Elements.h:44
std::shared_ptr< const UnresolvedAddressSet > OptionalExtractedAddresses
Extracted addresses (optional).
Definition: EntityInfo.h:100
Hash256 MerkleComponentHash
Modified hash that should be used as a hash in the merkle tree.
Definition: Elements.h:47
WeakEntityInfos & m_entityInfos
Definition: Elements.cpp:64
WeakEntityInfoT< VerifiableEntity > WeakEntityInfo
Definition: WeakEntityInfo.h:128
Processing element for a transaction composed of a transaction and metadata.
Definition: Elements.h:33
Processing element for a block composed of a block and metadata.
Definition: Elements.h:55
Binary layout for a block.
Definition: Block.h:69
utils::BaseValue< uint64_t, Timestamp_tag > Timestamp
Definition: src/catapult/types.h:73
Definition: AddressExtractionExtension.cpp:28
MatchingEntityPredicate m_predicate
Definition: Elements.cpp:65
TransactionElement(const model::Transaction &transaction)
Creates a transaction element around transaction.
Definition: Elements.h:36
std::vector< WeakEntityInfo > WeakEntityInfos
A container of weak entity infos.
Definition: WeakEntityInfo.h:144
Binary layout for a transaction.
Definition: Transaction.h:32
std::shared_ptr< const BlockStatement > OptionalStatement
Definition: Elements.h:79