public static Header getMergedMetricsHeader(List<File> inputMetricsList, File outputMetrics) {
List<String> header = new ArrayList<>();
for (File file : inputMetricsList)
header.add("INPUT="+ file.getAbsolutePath());
header.add("OUTPUT="+ outputMetrics.getAbsolutePath());
return new StringHeader(StringUtils.join(header, "\t"));
}
public void writeHistograms() {
for (final String sample : samples) {
final MetricsFile<?, Integer> refMetricsFile = new MetricsFile<>();
refMetricsFile.addHeader(new StringHeader(sample));
refSiteHistograms.get(sample).values().forEach(refMetricsFile::addHistogram);
refMetricsFile.write(new File(tmpDir,IOUtils.urlEncode(sample) + REF_HIST_EXTENSION));
final MetricsFile<?, Integer> altMetricsFile = new MetricsFile<>();
altMetricsFile.addHeader(new StringHeader(sample));
depthOneAltHistograms.get(sample).getHistograms().forEach(altMetricsFile::addHistogram);
altMetricsFile.write(new File(tmpDir, IOUtils.urlEncode(sample) + ALT_HIST_EXTENSION));
}
}