OSDN Git Service

Voter reward (#344)
[bytom/vapor.git] / protocol / store.go
index 48ac4e8..f93b1ba 100644 (file)
@@ -10,7 +10,7 @@ import (
 )
 
 var (
-       ErrNotFoundVoteResult = errors.New("can't find the vote result by given sequence")
+       ErrNotFoundConsensusResult = errors.New("can't find the vote result by given sequence")
 )
 
 // Store provides storage interface for blockchain data
@@ -18,16 +18,18 @@ type Store interface {
        BlockExist(*bc.Hash) bool
 
        GetBlock(*bc.Hash) (*types.Block, error)
+       GetBlockHeader(*bc.Hash) (*types.BlockHeader, error)
        GetStoreStatus() *BlockStoreState
        GetTransactionStatus(*bc.Hash) (*bc.TransactionStatus, error)
        GetTransactionsUtxo(*state.UtxoViewpoint, []*bc.Tx) error
        GetUtxo(*bc.Hash) (*storage.UtxoEntry, error)
-       GetVoteResult(uint64) (*state.VoteResult, error)
+       GetConsensusResult(uint64) (*state.ConsensusResult, error)
+       GetMainChainHash(uint64) (*bc.Hash, error)
+       GetBlockHashesByHeight(uint64) ([]*bc.Hash, error)
 
-       LoadBlockIndex(uint64) (*state.BlockIndex, error)
        SaveBlock(*types.Block, *bc.TransactionStatus) error
-       SaveChainStatus(*state.BlockNode, *state.BlockNode, *state.UtxoViewpoint, map[uint64]*state.VoteResult) error
-       SaveChainNodeStatus(*state.BlockNode, *state.BlockNode) error
+       SaveBlockHeader(*types.BlockHeader) error
+       SaveChainStatus(*types.BlockHeader, *types.BlockHeader, []*types.BlockHeader, *state.UtxoViewpoint, []*state.ConsensusResult) error
 }
 
 // BlockStoreState represents the core's db status