Returns the earliest block with specified status_mask flags set after the latest block not having those flags.
Synopsis
Declared in <node/blockstorage.h>
[[requires_capability(0x7fbc8f17b5c8), requires_capability(0x7fbca3f04af8), requires_capability(0x7fbcace16d48), requires_capability(0x7fbca6c589b8), requires_capability(0x7fbcad360158), requires_capability(0x7fbc9fba1f18)]]
CBlockIndex const&
GetFirstBlock(
CBlockIndex const& upper_block,
uint32_t status_mask,
CBlockIndex const* lower_block = nullptr) const;
Description
This function starts from upper_block, which must have all status_mask flags set, and iterates backwards through its ancestors. It continues as long as each block has all status_mask flags set, until reaching the oldest ancestor or lower_block.
Return Value
A reference to the earliest block between upper_block and lower_block, inclusive, such that every block between the returned block and upper_block has status_mask flags set.
Parameters
Name |
Description |
upper_block |
The starting block for the search, which must have all |
status_mask |
Bitmask specifying required status flags. |
lower_block |
The earliest possible block to return. If null, the search can extend to the genesis block. |
Preconditions
-
upper_blockmust have allstatus_maskflags set. -
lower_blockmust be null or an ancestor ofupper_block
Created with MrDocs