4061e76e6ead3d4a59704aab422abef16e3cfd2e hiram Tue Feb 19 11:41:29 2019 -0800 beginning to return data from track hub bigBed files refs #18869 diff --git src/hg/hubApi/hubApi.c src/hg/hubApi/hubApi.c index a80b2df..112b26e 100644 --- src/hg/hubApi/hubApi.c +++ src/hg/hubApi/hubApi.c @@ -519,30 +519,32 @@ hPrintf("

Example URLs to return json data structures:

\n"); hPrintf("
    \n"); hPrintf("
  1. list public hubs /cgi-bin/hubApi/list/publicHubs
  2. \n"); hPrintf("
  3. list database genomes /cgi-bin/hubApi/list/ucscGenomes
  4. \n"); hPrintf("
  5. list genomes from specified hub /cgi-bin/hubApi/list/hubGenomes?hubUrl=%s
  6. \n", url, url); hPrintf("
  7. list tracks from specified hub and genome /cgi-bin/hubApi/list/tracks?hubUrl=%s&genome=%s
  8. \n", url, hubGenome->name, url, hubGenome->name); hPrintf("
  9. list tracks from specified UCSC database /cgi-bin/hubApi/list/tracks?db=%s
  10. \n", ucscDb, ucscDb); hPrintf("
  11. list chromosomes from specified UCSC database /cgi-bin/hubApi/list/chromosomes?db=%s
  12. \n", ucscDb, ucscDb); hPrintf("
  13. list chromosomes from specified track from UCSC databaset /cgi-bin/hubApi/list/chromosomes?db=%s&track=gap
  14. \n", ucscDb, ucscDb); hPrintf("
  15. get sequence from specified database and chromosome /cgi-bin/hubApi/getData/sequence?db=%s&chrom=chrM
  16. \n", ucscDb, ucscDb); hPrintf("
  17. get sequence from specified database, chromosome with start,end coordinates /cgi-bin/hubApi/getData/sequence?db=%s&chrom=chrM&start=0&end=128
  18. \n", ucscDb, ucscDb); hPrintf("
  19. get entire track data from specified database and track name (gold == Assembly) /cgi-bin/hubApi/getData/track?db=%s&track=gold
  20. \n", ucscDb, ucscDb); hPrintf("
  21. get track data from specified database, chromosome and track name (gold == Assembly) /cgi-bin/hubApi/getData/track?db=%s&chrom=chrM&track=gold
  22. \n", ucscDb, ucscDb); hPrintf("
  23. get track data from specified database, chromosome, track name, start and end coordinates /cgi-bin/hubApi/getData/track?db=%s&chrom=chr1&track=gold&start=107680&end=186148
  24. \n", ucscDb, ucscDb); +hPrintf("
  25. get track data from specified hub, chromosome, track name, start and end coordinates /cgi-bin/hubApi/getData/track?hubUrl=http://genome-test.gi.ucsc.edu/~hiram/hubs/Plants/hub.txt&genome=_araTha1&chrom=chr1&track=assembly_&start=0&end=14309681
  26. \n"); + hPrintf("
\n"); } /* static void showExamples() */ #ifdef NOT static void showCartDump() /* for information purposes only during development, will become obsolete */ { hPrintf("

cart dump

"); hPrintf("
\n");
 cartDump(cart);
 hPrintf("
\n"); } #endif static void doMiddle(struct cart *theCart) @@ -598,31 +600,31 @@ cartWebStart(cart, database, "access mechanism to hub data resources"); char *goOtherHub = cartUsualString(cart, "goOtherHub", defaultHub); char *goUcscDb = cartUsualString(cart, "goUcscDb", ""); char *otherHubUrl = cartUsualString(cart, "urlHub", defaultHub); char *goPublicHub = cartUsualString(cart, "goPublicHub", defaultHub); char *hubDropDown = cartUsualString(cart, "publicHubs", defaultHub); char *urlDropDown = urlFromShortLabel(hubDropDown); char *ucscDb = cartUsualString(cart, "ucscGenomes", defaultDb); char *urlInput = urlDropDown; /* assume public hub */ if (sameWord("go", goOtherHub)) /* requested other hub URL */ urlInput = otherHubUrl; long lastTime = clock1000(); -struct trackHub *hub = trackHubOpen(urlInput, ""); +struct trackHub *hub = errCatchTrackHubOpen(urlInput); if (measureTiming) { long thisTime = clock1000(); hPrintf("hub open time: %ld millis
\n", thisTime - lastTime); } // hPrintf("

ucscDb: '%s'

\n", ucscDb); struct trackHubGenome *hubGenome = hub->genomeList; showExamples(urlInput, hubGenome, ucscDb); // showCartDump(); hPrintf("
\n\n", "../cgi-bin/hubApi");