mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-05-22 23:07:04 +00:00

* Change DifficultyAdjustmentWindowSize and TimestampDeviationTolerance from uint64 to int * refactor block_heap for readability and usage * Add a new SizedUpHeap * Refactor BlueWindow with the new DAA * Update TestBlueBlockWindow with the new DAA window * Fix review requested changes
17 lines
826 B
Go
17 lines
826 B
Go
package model
|
|
|
|
import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
|
|
|
// DAGTraversalManager exposes methods for traversing blocks
|
|
// in the DAG
|
|
type DAGTraversalManager interface {
|
|
BlockAtDepth(highHash *externalapi.DomainHash, depth uint64) (*externalapi.DomainHash, error)
|
|
LowestChainBlockAboveOrEqualToBlueScore(highHash *externalapi.DomainHash, blueScore uint64) (*externalapi.DomainHash, error)
|
|
SelectedParentIterator(highHash *externalapi.DomainHash) BlockIterator
|
|
SelectedChildIterator(highHash, lowHash *externalapi.DomainHash) (BlockIterator, error)
|
|
AnticoneFromContext(context, lowHash *externalapi.DomainHash) ([]*externalapi.DomainHash, error)
|
|
BlueWindow(highHash *externalapi.DomainHash, windowSize int) ([]*externalapi.DomainHash, error)
|
|
NewDownHeap() BlockHeap
|
|
NewUpHeap() BlockHeap
|
|
}
|