Wire Sysio Wire Sysion 1.0.0
|
#include <block_header.hpp>
Public Types | |
using | new_producers_type = std::optional<legacy::producer_schedule_type> |
mroot of all delivered action receipts | |
Public Member Functions | |
block_header ()=default | |
digest_type | digest () const |
block_id_type | calculate_id () const |
uint32_t | block_num () const |
flat_multimap< uint16_t, block_header_extension > | validate_and_extract_header_extensions () const |
Static Public Member Functions | |
static uint32_t | num_from_id (const block_id_type &id) |
Public Attributes | |
block_timestamp_type | timestamp |
account_name | producer |
uint16_t | confirmed = 1 |
block_id_type | previous |
checksum256_type | transaction_mroot |
checksum256_type | action_mroot |
mroot of cycles_summary | |
uint32_t | schedule_version = 0 |
new_producers_type | new_producers |
extensions_type | header_extensions |
Definition at line 26 of file block_header.hpp.
using sysio::chain::block_header::new_producers_type = std::optional<legacy::producer_schedule_type> |
LEGACY SUPPORT - After enabling the wtmsig-blocks extension this field is deprecated and must be empty
Prior to that activation this carries:
The producer schedule version that should validate this block, this is used to indicate that the prior block which included new_producers->version has been marked irreversible and that it the new producer schedule takes effect this block.
Definition at line 57 of file block_header.hpp.
|
default |
|
inline |
Definition at line 68 of file block_header.hpp.
block_id_type sysio::chain::block_header::calculate_id | ( | ) | const |
Definition at line 18 of file block_header.cpp.
digest_type sysio::chain::block_header::digest | ( | ) | const |
Definition at line 8 of file block_header.cpp.
|
static |
Definition at line 13 of file block_header.cpp.
flat_multimap< uint16_t, block_header_extension > sysio::chain::block_header::validate_and_extract_header_extensions | ( | ) | const |
Definition at line 27 of file block_header.cpp.
checksum256_type sysio::chain::block_header::action_mroot |
Definition at line 45 of file block_header.hpp.
uint16_t sysio::chain::block_header::confirmed = 1 |
By signing this block this producer is confirming blocks [block_num() - confirmed, blocknum()) as being the best blocks for that range and that he has not signed any other statements that would contradict.
No producer should sign a block with overlapping ranges or it is proof of byzantine behavior. When producing a block a producer is always confirming at least the block he is building off of. A producer cannot confirm "this" block, only prior blocks.
Definition at line 40 of file block_header.hpp.
extensions_type sysio::chain::block_header::header_extensions |
Definition at line 61 of file block_header.hpp.
new_producers_type sysio::chain::block_header::new_producers |
Definition at line 60 of file block_header.hpp.
block_id_type sysio::chain::block_header::previous |
Definition at line 42 of file block_header.hpp.
account_name sysio::chain::block_header::producer |
Definition at line 29 of file block_header.hpp.
uint32_t sysio::chain::block_header::schedule_version = 0 |
Definition at line 59 of file block_header.hpp.
block_timestamp_type sysio::chain::block_header::timestamp |
Definition at line 28 of file block_header.hpp.
checksum256_type sysio::chain::block_header::transaction_mroot |
Definition at line 44 of file block_header.hpp.