public static int BytesPerPiece(this ITorrentData self, int pieceIndex) { if (pieceIndex < self.PieceCount() - 1) { return(self.PieceLength); } return((int)(self.Size - self.PieceIndexToByteOffset(pieceIndex))); }
public static int BlocksPerPiece(this ITorrentData self, int pieceIndex) { if (pieceIndex < self.PieceCount() - 1) { return(self.PieceLength / Piece.BlockSize); } var remainder = self.Size - self.PieceIndexToByteOffset(pieceIndex); return((int)((remainder + Piece.BlockSize - 1) / Piece.BlockSize)); }