question: public static void compute ( double minScore , double topPercent , double maxExpected , float minPercentIdentity , IReadBlock readBlock , String classificationName , BitSet activeMatchesForClassification ) { activeMatchesForClassification . clear ( ) ; for ( int i = 0 ; i < readBlock . getNumberOfAvailableMatchBlocks ( ) ; i ++ ) { final IMatchBlock matchBlock = readBlock . getMatchBlock ( i ) ; if ( ! matchBlock . isIgnore ( ) && matchBlock . getBitScore ( ) >= minScore && matchBlock . getExpected ( ) <= maxExpected && matchBlock . getPercentIdentity ( ) >= minPercentIdentity ) { if ( matchBlock . getId ( classificationName ) > 0 ) activeMatchesForClassification . set ( i ) ; } } float bestScore = 0 ; for ( int i = activeMatchesForClassification . nextSetBit ( 0 ) ; i != - 1 ; i = activeMatchesForClassification . nextSetBit ( i + 1 ) ) { final IMatchBlock matchBlock = readBlock . getMatchBlock ( i ) ; float score = matchBlock . getBitScore ( ) ; if ( score > bestScore ) bestScore = score ; } applyTopPercentFilter ( topPercent , bestScore , minPercentIdentity , readBlock , activeMatchesForClassification ) ; }
target:  get the set of matches active for the given read