private boolean getDataBlock(int leafItemIndex){ // check for valid data block if(leafItemIndex >= leafHitList.size()) return false; // Perform a block read for indexed leaf item leafHitItem = leafHitList.get(leafItemIndex); // get the chromosome names associated with the hit region ID's int startChromID = leafHitItem.getChromosomeBounds().getStartChromID(); int endChromID = leafHitItem.getChromosomeBounds().getEndChromID(); chromosomeMap = chromIDTree.getChromosomeIDMap(startChromID, endChromID); boolean isLowToHigh = chromDataTree.isIsLowToHigh(); int uncompressBufSize = chromDataTree.getUncompressBuffSize(); // decompress leaf item data block for feature extraction bedDataBlock = new BigBedDataBlock(fis, leafHitItem, chromosomeMap, isLowToHigh, uncompressBufSize); // get data block Bed feature list and set next index to first item bedFeatureList = bedDataBlock.getBedData(selectionRegion, contained); bedFeatureIndex = 0; // data block items available for iterator if(bedFeatureList.size() > 0) return true; else return false; }
private boolean getDataBlock(int leafItemIndex){ // check for valid data block if(leafItemIndex >= leafHitList.size()) return false; // Perform a block read for indexed leaf item leafHitItem = leafHitList.get(leafItemIndex); // get the chromosome names associated with the hit region ID's int startChromID = leafHitItem.getChromosomeBounds().getStartChromID(); int endChromID = leafHitItem.getChromosomeBounds().getEndChromID(); chromosomeMap = chromIDTree.getChromosomeIDMap(startChromID, endChromID); boolean isLowToHigh = chromDataTree.isIsLowToHigh(); int uncompressBufSize = chromDataTree.getUncompressBuffSize(); // decompress leaf item data block for feature extraction bedDataBlock = new BigBedDataBlock(fis, leafHitItem, chromosomeMap, isLowToHigh, uncompressBufSize); // get data block Bed feature list and set next index to first item bedFeatureList = bedDataBlock.getBedData(selectionRegion, contained); bedFeatureIndex = 0; // data block items available for iterator if(bedFeatureList.size() > 0) return true; else return false; }
private List<BedFeature> readBedDataBlock(RPTreeLeafNodeItem leafHitItem) { // get the chromosome names associated with the hit region ID's int startChromID = leafHitItem.getChromosomeBounds().getStartChromID(); int endChromID = leafHitItem.getChromosomeBounds().getEndChromID(); chromosomeMap = chromIDTree.getChromosomeIDMap(startChromID, endChromID); boolean isLowToHigh = chromDataTree.isIsLowToHigh(); int uncompressBufSize = chromDataTree.getUncompressBuffSize(); // decompress leaf item data block for feature extraction BigBedDataBlock bedDataBlock = new BigBedDataBlock(fis, leafHitItem, chromosomeMap, isLowToHigh, uncompressBufSize); // get data block Bed feature list and set next index to first item return bedDataBlock.getBedData(selectionRegion, contained); }