Download any number of byte ranges from a Gesel database file.

downloadDatabaseRanges(
  name,
  start,
  end,
  url = databaseUrl(),
  multipart = FALSE
)

Arguments

name

String containing the name of the file. This usually has the species identifier as a prefix.

start

Integer vector containing the zero-indexed closed start of each byte range to extract from the file. This may be of zero length.

end

Integer vector containing the zero-indexed open end of each byte range to extract from the file. This should have the same length as start such that the i-th range is defined as [start[i], end[i]). All ranges supplied in a single call to this function should be non-overlapping.

url

String containing the base URL to the Gesel database files. For databaseUrl, this can be NULL to set it back to the default.

multipart

Logical scalar indicating whether the server at url supports multi-part range requests.

Value

Character vector of length equal to length(start), containing the contents of the requested byte ranges.

Author

Aaron Lun

Examples

downloadDatabaseRanges("9606_set2gene.tsv", 0L, 100L)
#> [1] "204\t1152\t1590\t103\t347\t2997\t535\t4463\t2327\t770\t817\n1912\t1\t3846\t13385\n11661\t1535\n8598\t3597\n859\t633\t1288"
downloadDatabaseRanges("9606_set2gene.tsv", c(10, 100, 1000), c(20, 150, 1100))
#> [1] "590\t103\t34"                                                                                                                    
#> [2] "\t2286\t242\t3160\t2635\t664\t6054\t6864\n1444\t41\t5\t1562\t1"                                                                  
#> [3] "53\t10\t663\t5\t78\t230\t29\t23\t707\t385\t275\t230\t445\t298\t126\t4\t28\t78\t66\t78\t340\t194\t276\t623\t472\t736\t282\t1366\t"