github.com/anacrolix/torrent@v1.61.0/piecestate.go (about) 1 package torrent 2 3 import ( 4 "github.com/anacrolix/torrent/storage" 5 ) 6 7 // The current state of a piece. 8 type PieceState struct { 9 storage.Completion 10 Priority PiecePriority 11 // The piece is being hashed, or is queued for hash. Deprecated: Use those fields instead. 12 Checking bool 13 14 Hashing bool 15 QueuedForHash bool 16 // The piece state is being marked in the storage. 17 Marking bool 18 19 // Some of the piece has been obtained. 20 Partial bool 21 22 // The v2 hash for the piece layer is missing. 23 MissingPieceLayerHash bool 24 } 25 26 // Represents a series of consecutive pieces with the same state. 27 type PieceStateRun struct { 28 PieceState 29 Length int // How many consecutive pieces have this state. 30 }