Search Results for

    Show / Hide Table of Contents

    Struct BlockHeader

    Block information.

    Implements
    IBlockRewards
    IBlockUpgradeState
    IBlockUpgradeVote
    ITxnCommitments
    Namespace: Algorand.Unity
    Assembly: cs.temp.dll.dll
    Syntax
    [AlgoApiObject("", "", 0)]
    [Serializable]
    public struct BlockHeader : IEquatable<BlockHeader>, IBlockRewards, IBlockUpgradeState, IBlockUpgradeVote, ITxnCommitments

    Fields

    Cc

    Declaration
    [AlgoApiField("cc")]
    public AlgoApiObject Cc
    Field Value
    Type Description
    AlgoApiObject

    GenesisHash

    [gh] hash to which this block belongs.

    Declaration
    [AlgoApiField("gh")]
    public GenesisHash GenesisHash
    Field Value
    Type Description
    GenesisHash

    GenesisId

    [gen] ID to which this block belongs.

    Declaration
    [AlgoApiField("gen")]
    public FixedString64Bytes GenesisId
    Field Value
    Type Description
    FixedString64Bytes

    PreviousBlockHash

    [prev] Previous block hash.

    Declaration
    [AlgoApiField("prev")]
    public BlockHash PreviousBlockHash
    Field Value
    Type Description
    BlockHash

    Rewards

    See BlockRewards

    Declaration
    [AlgoApiField("rewards")]
    public BlockRewards Rewards
    Field Value
    Type Description
    BlockRewards

    Round

    [rnd] Current round on which this block was appended to the chain.

    Declaration
    [AlgoApiField("rnd")]
    public ulong Round
    Field Value
    Type Description
    UInt64

    Seed

    [seed] Sortition seed.

    Declaration
    [AlgoApiField("seed")]
    public Sha512_256_Hash Seed
    Field Value
    Type Description
    Sha512_256_Hash

    StateProofTracking

    StateProofTracking tracks the status of the state proofs, potentially for multiple types of ASPs (Algorand's State Proofs).

    Declaration
    [AlgoApiField("spt")]
    public StateProofTrackingDataMap StateProofTracking
    Field Value
    Type Description
    StateProofTrackingDataMap

    Timestamp

    [ts] Block creation timestamp in seconds since epoch

    Declaration
    [AlgoApiField("ts")]
    public ulong Timestamp
    Field Value
    Type Description
    UInt64

    TransactionCounter

    [tc] TxnCounter counts the number of transactions committed in the ledger, from the time at which support for this feature was introduced.

    Declaration
    [AlgoApiField("tc")]
    public ulong TransactionCounter
    Field Value
    Type Description
    UInt64
    Remarks

    Specifically, TxnCounter is the number of the next transaction that will be committed after this block. It is 0 when no transactions have ever been committed (since TxnCounter started being supported).

    Transactions

    [txns] list of transactions corresponding to a given round.

    Declaration
    [AlgoApiField("txns")]
    public BlockTransaction[] Transactions
    Field Value
    Type Description
    BlockTransaction[]

    UpgradeState

    See BlockUpgradeState

    Declaration
    [AlgoApiField("upgrade-state")]
    public BlockUpgradeState UpgradeState
    Field Value
    Type Description
    BlockUpgradeState

    UpgradeVote

    See BlockUpgradeVote

    Declaration
    [AlgoApiField("upgrade-vote")]
    public BlockUpgradeVote UpgradeVote
    Field Value
    Type Description
    BlockUpgradeVote

    Properties

    CurrentProtocol

    [proto] The current protocol version.

    Declaration
    [AlgoApiField("proto")]
    public FixedString128Bytes CurrentProtocol { get; set; }
    Property Value
    Type Description
    FixedString128Bytes

    FeeSink

    [fees] accepts transaction fees, it can only spend to the incentive pool.

    Declaration
    [AlgoApiField("fees")]
    public Address FeeSink { get; set; }
    Property Value
    Type Description
    Address

    NativeSha512_256Commitment

    Root of transaction merkle tree using SHA512_256 hash function. This commitment is computed based on the PaysetCommit type specified in the block's consensus protocol.

    Declaration
    [AlgoApiField("txn")]
    public Digest NativeSha512_256Commitment { get; set; }
    Property Value
    Type Description
    Digest

    NextProtocol

    [nextproto] The next proposed protocol version.

    Declaration
    [AlgoApiField("nextproto")]
    public FixedString128Bytes NextProtocol { get; set; }
    Property Value
    Type Description
    FixedString128Bytes

    NextProtocolApprovals

    [nextyes] Number of blocks which approved the protocol upgrade.

    Declaration
    [AlgoApiField("nextyes")]
    public ulong NextProtocolApprovals { get; set; }
    Property Value
    Type Description
    UInt64

    NextProtocolSwitchOn

    [nextswitch] Round on which the protocol upgrade will take effect.

    Declaration
    [AlgoApiField("nextswitch")]
    public ulong NextProtocolSwitchOn { get; set; }
    Property Value
    Type Description
    UInt64

    NextProtocolVoteBefore

    [nextbefore] Deadline round for this protocol upgrade (No votes will be consider after this round).

    Declaration
    [AlgoApiField("nextbefore")]
    public ulong NextProtocolVoteBefore { get; set; }
    Property Value
    Type Description
    UInt64

    RewardsCalculationRound

    [rwcalr] number of leftover MicroAlgos after the distribution of rewards-rate MicroAlgos for every reward unit in the next round.

    Declaration
    [AlgoApiField("rwcalr")]
    public ulong RewardsCalculationRound { get; set; }
    Property Value
    Type Description
    UInt64

    RewardsLevel

    [earn] How many rewards, in MicroAlgos, have been distributed to each RewardUnit of MicroAlgos since genesis.

    Declaration
    [AlgoApiField("earn")]
    public ulong RewardsLevel { get; set; }
    Property Value
    Type Description
    UInt64

    RewardsPool

    [rwd] accepts periodic injections from the fee-sink and continually redistributes them as rewards.

    Declaration
    [AlgoApiField("rwd")]
    public Address RewardsPool { get; set; }
    Property Value
    Type Description
    Address

    RewardsRate

    [rate] Number of new MicroAlgos added to the participation stake from rewards at the next round.

    Declaration
    [AlgoApiField("rate")]
    public ulong RewardsRate { get; set; }
    Property Value
    Type Description
    UInt64

    RewardsResidue

    [frac] Number of leftover MicroAlgos after the distribution of RewardsRate/rewardUnits MicroAlgos for every reward unit in the next round.

    Declaration
    [AlgoApiField("frac")]
    public ulong RewardsResidue { get; set; }
    Property Value
    Type Description
    UInt64

    Sha256Commitment

    Root of transaction vector commitment merkle tree using SHA256 hash function.

    Declaration
    [AlgoApiField("txn256")]
    public Digest Sha256Commitment { get; set; }
    Property Value
    Type Description
    Digest

    UpgradeApprove

    [upgradeyes] Indicates a yes vote for the current proposal.

    Declaration
    [AlgoApiField("upgradeyes")]
    public Optional<bool> UpgradeApprove { get; set; }
    Property Value
    Type Description
    Optional<Boolean>

    UpgradeDelay

    [upgradedelay] Indicates the time between acceptance and execution.

    Declaration
    [AlgoApiField("upgradedelay")]
    public ulong UpgradeDelay { get; set; }
    Property Value
    Type Description
    UInt64

    UpgradePropose

    [upgradeprop] Indicates a proposed upgrade.

    Declaration
    [AlgoApiField("upgradeprop")]
    public Address UpgradePropose { get; set; }
    Property Value
    Type Description
    Address

    Methods

    Equals(BlockHeader)

    Declaration
    public bool Equals(BlockHeader other)
    Parameters
    Type Name Description
    BlockHeader other
    Returns
    Type Description
    Boolean

    Implements

    IBlockRewards
    IBlockUpgradeState
    IBlockUpgradeVote
    ITxnCommitments
    ☀
    ☾
    In This Article
    Back to top
    Generated by DocFX
    ☀
    ☾