int rangeEnd = r.getTo() + 1; int usefulStep = Math.max(1, r.getLength() / NOTIONAL_SCREEN_WIDTH); // No need for more points than we have pixels. List<TDFTile> tiles = ds.getTiles(r.getFrom(), rangeEnd); for (TDFTile t : tiles) { for (int i = 0; i < t.getSize() && nextPos <= rangeEnd; i++) {
TDFDataset ds = reader.getDataset(querySeq, zoom, windowFunction); if (ds != null) { tiles = ds.getTiles(startLocation, endLocation);
private List<LocusScore> getWGRawScores() { List<LocusScore> scores = new ArrayList(10000); for (String chr : genome.getAllChromosomeNames()) { Chromosome c = genome.getChromosome(chr); String dsName = "/" + chr + "/raw"; TDFDataset rawDataset = reader.getDataset(dsName); if (rawDataset != null) { List<TDFTile> rawTiles = rawDataset.getTiles(0, c.getLength()); if (rawTiles.size() > 0) { for (TDFTile rawTile : rawTiles) { // Tile of raw data if (rawTile != null && rawTile.getSize() > 0) { for (int i = 0; i < rawTile.getSize(); i++) { int s = genome.getGenomeCoordinate(chr, rawTile.getStartPosition(i)); int e = genome.getGenomeCoordinate(chr, Math.max(s, rawTile.getEndPosition(i) - 1)); float v = rawTile.getValue(trackNumber, i); if (!Float.isNaN(v)) { v *= normalizationFactor; } scores.add(new BasicScore(s, e, v)); } } } } } } return scores; }
List<TDFTile> rawTiles = rawDataset.getTiles(startLocation, endLocation); if (rawTiles.size() > 0) {
private void testTile(String inputFile, int start, int end) throws IOException { String file1 = TestUtils.TMP_OUTPUT_DIR + "file1.tdf"; String file2 = TestUtils.TMP_OUTPUT_DIR + "file2.tdf"; //todo Compare 2 outputs more meaningfully String[] args = {"toTDF", "-z", "1", "--windowFunctions", "min", inputFile, file1, hg18id}; igvTools.run(args); FeatureDB.clearFeatures(); Runtime.getRuntime().gc(); args = new String[]{"toTDF", "-z", "1", "--windowFunctions", "max", inputFile, file2, hg18id}; igvTools.run(args); String dsName = "/chr1/raw"; TDFDataset ds1 = TDFReader.getReader(file1).getDataset(dsName); TDFDataset ds2 = TDFReader.getReader(file2).getDataset(dsName); TDFTile t1 = ds1.getTiles(start, end).get(0); TDFTile t2 = ds2.getTiles(start, end).get(0); int nPts = t1.getSize(); assertEquals(nPts, t2.getSize()); for (int i = 0; i < nPts; i++) { assertTrue(t1.getStartPosition(i) < t1.getEndPosition(i)); assertEquals(t1.getStartPosition(i), t2.getStartPosition(i)); assertTrue(t1.getValue(0, i) <= t2.getValue(0, i)); if (i < nPts - 1) { assertTrue(t1.getStartPosition(i) < t1.getStartPosition(i + 1)); } } (new File(file1)).delete(); (new File(file2)).delete(); }
for (String name : reader.getDatasetNames()) { TDFDataset ds = reader.getDataset(name); List<TDFTile> tiles = ds.getTiles(); for (TDFTile tile : tiles) { assertTrue(tile.getTileStart() >= start);
if(chrDataset == null) continue; List<TDFTile> chrTiles = chrDataset.getTiles();