Returns the earliest block with specified status_mask flags set after the latest block not having those flags.
Declared in <node/blockstorage.h>
[[requires_capability(0x7f2e1b0997e8), requires_capability(0x7f2e26d1af48), requires_capability(0x7f2e375e1028), requires_capability(0x7f2e333683e8), requires_capability(0x7f2e3542f3d8), requires_capability(0x7f2e28a73f38)]]
CBlockIndex const&
GetFirstBlock(
CBlockIndex const& upper_block,
uint32_t status_mask,
CBlockIndex const* lower_block = nullptr) const;
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.
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.
| Name | Description |
|---|---|
| upper_block | The starting block for the search, which must have all status_mask flags set. |
| 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. |
upper_block must have all status_mask flags set.lower_block must be null or an ancestor of upper_block