sgns::blockchain::BlockStorage¶
#include <block_storage.hpp>
Inherits from IComponent
Inherited by sgns::blockchain::KeyValueBlockStorage
Public Functions¶
| Name | |
|---|---|
| ~BlockStorage() override =default | |
| virtual outcome::result< primitives::BlockHash > | getGenesisBlockHash() const =0 Get hash of genesis block. |
| virtual outcome::result< primitives::BlockHash > | getLastFinalizedBlockHash() const =0 |
| virtual outcome::result< void > | setLastFinalizedBlockHash(const primitives::BlockHash & ) =0 |
| virtual outcome::result< primitives::BlockHeader > | getBlockHeader(const primitives::BlockId & id) const =0 |
| virtual outcome::result< primitives::BlockBody > | getBlockBody(const primitives::BlockId & id) const =0 |
| virtual outcome::result< primitives::BlockData > | getBlockData(const primitives::BlockId & id) const =0 |
| virtual outcome::result< primitives::Justification > | getJustification(const primitives::BlockId & block) const =0 |
| virtual outcome::result< primitives::BlockHash > | putBlockHeader(const primitives::BlockHeader & header) =0 |
| virtual outcome::result< void > | putBlockData(primitives::BlockNumber , const primitives::BlockData & block_data) =0 |
| virtual outcome::result< primitives::BlockHash > | putBlock(const primitives::Block & block) =0 |
| virtual outcome::result< void > | putJustification(const primitives::Justification & j, const primitives::BlockHash & hash, const primitives::BlockNumber & number) =0 |
| virtual outcome::result< void > | removeBlock(const primitives::BlockHash & hash, const primitives::BlockNumber & number) =0 |
Additional inherited members¶
Public Functions inherited from IComponent
| Name | |
|---|---|
| virtual | ~IComponent() =default |
| virtual std::string | GetName() =0 |
Detailed Description¶
A wrapper for a storage of blocks Provides a convenient interface to work with it
Public Functions Documentation¶
function ~BlockStorage¶
function getGenesisBlockHash¶
Get hash of genesis block.
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::getGenesisBlockHash
function getLastFinalizedBlockHash¶
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::getLastFinalizedBlockHash
function setLastFinalizedBlockHash¶
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::setLastFinalizedBlockHash
function getBlockHeader¶
virtual outcome::result< primitives::BlockHeader > getBlockHeader(
const primitives::BlockId & id
) const =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::getBlockHeader
function getBlockBody¶
virtual outcome::result< primitives::BlockBody > getBlockBody(
const primitives::BlockId & id
) const =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::getBlockBody
function getBlockData¶
virtual outcome::result< primitives::BlockData > getBlockData(
const primitives::BlockId & id
) const =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::getBlockData
function getJustification¶
virtual outcome::result< primitives::Justification > getJustification(
const primitives::BlockId & block
) const =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::getJustification
function putBlockHeader¶
virtual outcome::result< primitives::BlockHash > putBlockHeader(
const primitives::BlockHeader & header
) =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::putBlockHeader
function putBlockData¶
virtual outcome::result< void > putBlockData(
primitives::BlockNumber ,
const primitives::BlockData & block_data
) =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::putBlockData
function putBlock¶
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::putBlock
function putJustification¶
virtual outcome::result< void > putJustification(
const primitives::Justification & j,
const primitives::BlockHash & hash,
const primitives::BlockNumber & number
) =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::putJustification
function removeBlock¶
virtual outcome::result< void > removeBlock(
const primitives::BlockHash & hash,
const primitives::BlockNumber & number
) =0
Reimplemented by: sgns::blockchain::KeyValueBlockStorage::removeBlock
Updated on 2026-03-04 at 13:10:43 -0800