## Uses of Class
org.klomp.snark.BitField

- Packages that use BitField
  Package | Description
  --- | ---
  org.klomp.snark |

- - ### Uses of BitField in org.klomp.snark

    Fields in org.klomp.snark declared as BitField
    Modifier and Type | Field and Description
    --- | ---
    `(package private) BitField` | PeerState.`bitfield` the pieces the peer has

    Methods in org.klomp.snark that return BitField
    Modifier and Type | Method and Description
    --- | ---
    `BitField` | Storage.`getBitField()` The BitField that tells which pieces this storage contains.
    `BitField` | SnarkManager.`getSavedTorrentBitField(Snark snark)` Get the saved bitfield for a torrent from the config file.
    `BitField` | Snark.CompleteListener.`getSavedTorrentBitField(Snark snark)`

    Methods in org.klomp.snark with parameters of type BitField
    Modifier and Type | Method and Description
    --- | ---
    `void` | SnarkManager.`addTorrent(MetaInfo metainfo, BitField bitfield, String filename, boolean dontAutoStart)` Add a torrent from a MetaInfo.
    `void` | Storage.`check(String rootDir, long savedTime, BitField savedBitField)` use a saved bitfield and timestamp from a config file
    `PartialPiece` | PeerCoordinator.`getPartialPiece(Peer peer, BitField havePieces)` Return partial piece to the PeerState if it's still wanted and peer has it.
    `PartialPiece` | PeerListener.`getPartialPiece(Peer peer, BitField havePieces)` Called when a peer has connected and there may be a partially downloaded piece that the coordinatorator can give the peer task
    `boolean` | PeerCoordinator.`gotBitField(Peer peer, BitField bitfield)` Returns true if the given bitfield contains at least one piece we are interested in.
    `boolean` | PeerListener.`gotBitField(Peer peer, BitField bitfield)` Called when a bitmap message is received.
    `boolean` | PeerCoordinator.`needPiece(Peer peer, BitField havePieces)` Called when we are downloading from the peer and may need to ask for a new piece.
    `boolean` | PeerListener.`needPiece(Peer peer, BitField bitfield)` Called when we are downloading from the peer and may need to ask for a new piece.
    `void` | Peer.`runConnection(I2PSnarkUtil util, PeerListener listener, BitField bitfield, MagnetState mState)` Runs the connection to the other peer.
    `void` | SnarkManager.`saveTorrentStatus(MetaInfo metainfo, BitField bitfield, int[] priorities)` Save the completion status of a torrent and the current time in the config file in the form "i2psnark.zmeta.$base64infohash=$time,$base64bitfield".
    `(package private) void` | PeerConnectionOut.`sendBitfield(BitField bitfield)`
    `int` | PeerCoordinator.`wantPiece(Peer peer, BitField havePieces)` Returns one of pieces in the given BitField that is still wanted or -1 if none of the given pieces are wanted.
    `int` | PeerListener.`wantPiece(Peer peer, BitField bitfield)` Called when we are downloading from the peer and need to ask for a new piece.