mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-09-13 13:00:10 +00:00

* [NOD-1164] Defined DatabaseContext as the basic object of dbaccess * [NOD-1164] Update everything to use databaseContext * [NOD-1164] Fix tests * [NOD-1164] Add comments * [NOD-1164] Removed databaseContext from blockNode * [NOD-1164] Enforce DatabaseContext != nil * [NOD-1164] Remove redundant and wrong comment line
29 lines
940 B
Go
29 lines
940 B
Go
// Copyright (c) 2016 The btcsuite developers
|
|
// Use of this source code is governed by an ISC
|
|
// license that can be found in the LICENSE file.
|
|
|
|
/*
|
|
Package indexers implements optional block DAG indexes.
|
|
*/
|
|
package indexers
|
|
|
|
import (
|
|
"github.com/kaspanet/kaspad/blockdag"
|
|
"github.com/kaspanet/kaspad/dbaccess"
|
|
"github.com/kaspanet/kaspad/util/daghash"
|
|
)
|
|
|
|
// Indexer provides a generic interface for an indexer that is managed by an
|
|
// index manager such as the Manager type provided by this package.
|
|
type Indexer interface {
|
|
// Init is invoked when the index manager is first initializing the
|
|
// index.
|
|
Init(dag *blockdag.BlockDAG, databaseContext *dbaccess.DatabaseContext) error
|
|
|
|
// ConnectBlock is invoked when the index manager is notified that a new
|
|
// block has been connected to the DAG.
|
|
ConnectBlock(dbContext *dbaccess.TxContext,
|
|
blockHash *daghash.Hash,
|
|
acceptedTxsData blockdag.MultiBlockTxsAcceptanceData) error
|
|
}
|