Kagome
Polkadot Runtime Engine in C++17
|
#include <scale/bitvec.hpp>
#include "common/blob.hpp"
#include "common/unused.hpp"
#include "primitives/authority_discovery_id.hpp"
#include "primitives/block_id.hpp"
#include "primitives/common.hpp"
#include "primitives/parachain_host.hpp"
Go to the source code of this file.
Classes | |
struct | kagome::runtime::ScheduledCore |
Information about a core which is currently occupied. More... | |
struct | kagome::runtime::CandidateDescriptor |
struct | kagome::runtime::OccupiedCore |
Information about a core which is currently occupied. More... | |
struct | kagome::runtime::PersistedValidationData |
struct | kagome::runtime::CandidateCommitments |
struct | kagome::runtime::CommittedCandidateReceipt |
struct | kagome::runtime::CandidateReceipt |
struct | kagome::runtime::Candidate |
struct | kagome::runtime::CandidateBacked |
struct | kagome::runtime::CandidateIncluded |
struct | kagome::runtime::CandidateTimedOut |
struct | kagome::runtime::SessionInfo |
Namespaces | |
kagome::runtime | |
Typedefs | |
using | kagome::runtime::Buffer = common::Buffer |
using | kagome::runtime::ValidatorId = primitives::parachain::ValidatorId |
using | kagome::runtime::DutyRoster = primitives::parachain::DutyRoster |
using | kagome::runtime::ParachainId = primitives::parachain::ParaId |
using | kagome::runtime::GroupIndex = uint32_t |
using | kagome::runtime::CollatorId = common::Blob< 32 > |
using | kagome::runtime::Hash = common::Hash256 |
using | kagome::runtime::CollatorSignature = common::Hash256 |
using | kagome::runtime::ValidationCodeHash = common::Hash256 |
using | kagome::runtime::BlockNumber = primitives::BlockNumber |
using | kagome::runtime::CandidateHash = common::Hash256 |
using | kagome::runtime::HeadData = Buffer |
using | kagome::runtime::GroupRotatePeriod = uint32_t |
using | kagome::runtime::UpwardMessage = Buffer |
using | kagome::runtime::ValidationCode = Buffer |
using | kagome::runtime::SessionIndex = uint32_t |
using | kagome::runtime::CoreIndex = uint32_t |
using | kagome::runtime::GroupDescriptor = std::tuple< BlockNumber, GroupRotatePeriod, BlockNumber > |
using | kagome::runtime::ValidatorGroup = std::tuple< std::vector< ValidatorId >, GroupDescriptor > |
using | kagome::runtime::CoreState = boost::variant< OccupiedCore, ScheduledCore, Unused< 2 >> |
using | kagome::runtime::CandidateEvent = boost::variant< CandidateBacked, CandidateIncluded, CandidateTimedOut > |
using | kagome::runtime::ValidatorIndex = uint32_t |
using | kagome::runtime::AssignmentId = common::Blob< 32 > |
using | kagome::runtime::DownwardMessage = Buffer |
struct kagome::runtime::ScheduledCore |
Information about a core which is currently occupied.
Definition at line 39 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
optional< CollatorId > | collator | The collator required to author the block, if any. |
ParachainId | para_id | The ID of a para scheduled. |
struct kagome::runtime::CandidateDescriptor |
Definition at line 46 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
CollatorId | collator | The collator's sr25519 public key. |
Hash | erasure_root | The root of a block's erasure encoding Merkle tree. |
Hash | para_head | Hash of the para header that is being generated by this candidate. |
ParachainId | para_id | The ID of the para this is a candidate for. |
Hash | persisted_validation_data_hash |
The blake2-256 hash of the persisted validation data. This is extra data derived from relay-chain state which may vary based on bitfields included before the candidate. Thus it cannot be derived entirely from the relay-parent. |
Hash | pov_hash | The blake2-256 hash of the PoV. |
Hash | relay_parent | The hash of the relay-chain block this is executed in the context of. |
CollatorSignature | signature |
Signature on blake2-256 of components of this receipt: The parachain index, the relay parent, the validation data hash, and the |
ValidationCodeHash | validation_code_hash | The blake2-256 hash of the validation code bytes. |
struct kagome::runtime::OccupiedCore |
Information about a core which is currently occupied.
Definition at line 73 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
BitVec | availability |
A bitfield with 1 bit for each validator in the set. |
CandidateDescriptor | candidate_descriptor | The descriptor of the candidate occupying the core. |
CandidateHash | candidate_hash | The hash of the candidate occupying the core. |
GroupIndex | group_responsible | The group assigned to distribute availability pieces of this candidate. |
optional< ScheduledCore > | next_up_on_available |
If this core is freed by availability, this is the assignment that is next up on this core, if any. None if there is nothing queued for this core. |
optional< ScheduledCore > | next_up_on_time_out |
If this core is freed by being timed-out, this is the assignment that is next up on this core. None if there is nothing queued for this core or there is no possibility of timing out. |
BlockNumber | occupied_since | The relay-chain block number this began occupying the core at. |
BlockNumber | time_out_at | The relay-chain block this will time-out at, if any. |
struct kagome::runtime::PersistedValidationData |
Definition at line 111 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
uint32_t | max_pov_size | The maximum legal size of a POV block, in bytes. |
HeadData | parent_head | The parent head-data. |
BlockNumber | relay_parent_number | The relay-chain block number this is in the context of. |
Hash | relay_parent_storage_root | The relay-chain block storage root this is in the context of. |
struct kagome::runtime::OutboundHrmpMessage |
Definition at line 122 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
Buffer | data | The message payload. |
ParachainId | recipient | The para that will get this message in its downward message queue. |
struct kagome::runtime::CandidateCommitments |
Definition at line 129 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
HeadData | head_data | The head-data produced as a result of execution. |
vector< OutboundHrmpMessage > | horizontal_messages | Horizontal messages sent by the parachain. |
BlockNumber | hrmp_watermark |
The mark which specifies the block number up to which all inbound HRMP messages are processed. |
optional< ValidationCode > | new_validation_code | New validation code. |
uint32_t | processed_downward_messages | The number of messages processed from the DMQ. |
vector< UpwardMessage > | upward_messages | Messages destined to be interpreted by the Relay chain itself. |
struct kagome::runtime::CommittedCandidateReceipt |
Definition at line 145 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
CandidateCommitments | commitments | The commitments of the candidate receipt. |
CandidateDescriptor | descriptor | The descriptor of the candidate. |
struct kagome::runtime::CandidateReceipt |
Definition at line 152 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
Hash | commitments_hash |
The hash of the encoded commitments made as a result of candidate execution. |
CandidateDescriptor | descriptor | The descriptor of the candidate. |
struct kagome::runtime::SessionInfo |
Definition at line 192 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
vector< ValidatorIndex > | active_validator_indices |
All the validators actively participating in parachain consensus. Indices are into the broader validator set. |
vector< AssignmentId > | assignment_keys |
The assignment keys for validators. NOTE: There might be more authorities in the current session, than validators participating in parachain consensus. See Therefore: |
vector< AuthorityDiscoveryId > | discovery_keys |
Validators' authority discovery keys for the session in canonical ordering. NOTE: The first
|
SessionIndex | dispute_period | The amount of sessions to keep for disputes. |
uint32_t | n_cores |
The number of availability cores used by the protocol during this session. |
uint32_t | n_delay_tranches | The number of delay tranches in total. |
uint32_t | needed_approvals | The number of validators needed to approve a block. |
uint32_t | no_show_slots |
How many slots (BABE / SASSAFRAS) must pass before an assignment is considered a no-show. |
Blob< 32 > | random_seed | A secure random seed for the session, gathered from BABE. |
uint32_t | relay_vrf_modulo_samples |
The number of samples we do of relay_vrf_modulo . |
vector< vector< ValidatorIndex > > | validator_groups |
Validators in shuffled ordering - these are the validator groups as produced by the |
vector< ValidatorId > | validators |
Validators in canonical ordering. NOTE: There might be more authorities in the current session, than
|
uint32_t | zeroth_delay_tranche_width | The zeroth delay tranche width. |
struct kagome::runtime::InboundDownwardMessage |
Definition at line 254 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
DownwardMessage | msg | The actual downward message to processes. |
BlockNumber | sent_at |
The block number at which these messages were put into the downward message queue. |
struct kagome::runtime::InboundHrmpMessage |
Definition at line 262 of file parachain_host_types.hpp.
Class Members | ||
---|---|---|
Buffer | data | The message payload. |
BlockNumber | sent_at |
The block number at which this message was sent. Specifically, it is the block number at which the candidate that sends this message was enacted. |