|
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.