public void addRocLine(VcfRecord rec,int sampleId,double tpWeight,double fpWeight,double tpRaw){
  double score=Double.NaN;
  try {
    score=mRocExtractor.getSortValue(rec,sampleId);
  }
 catch (  IndexOutOfBoundsException ignored) {
  }
  if (Double.isNaN(score) || Double.isInfinite(score)) {
    mNoScoreVariants++;
  }
 else {
    final RocPoint point=new RocPoint(score,tpWeight,fpWeight,tpRaw);
    final int[] gt=mRequiresGt ? VcfUtils.getValidGt(rec,sampleId) : null;
    for (    final RocFilter filter : filters()) {
      if (filter.accept(rec,gt)) {
        addRocLine(point,filter);
      }
    }
  }
}

public void addRocLine ( VcfRecord rec , int sampleId , double tpWeight , double fpWeight , double tpRaw ) { double score = Double . NaN ; try { score = mRocExtractor . getSortValue ( rec , sampleId ) ; } catch ( IndexOutOfBoundsException ignored ) { } if ( Double . isNaN ( score ) || Double . isInfinite ( score ) ) { mNoScoreVariants ++ ; } else { final RocPoint point = new RocPoint ( score , tpWeight , fpWeight , tpRaw ) ; final int [ ] gt = mRequiresGt ? VcfUtils . getValidGt ( rec , sampleId ) : null ; for ( final RocFilter filter : filters ( ) ) { if ( filter . accept ( rec , gt ) ) { addRocLine ( point , filter ) ; } } } }
add single result to roc
