13b584581e6d7b1860e0cab97adc3594b1899308 braney Mon Aug 7 12:05:10 2023 -0700 add instaPort to bigBed support diff --git src/hg/inc/liftOver.h src/hg/inc/liftOver.h index 82c80ce..d27f571 100644 --- src/hg/inc/liftOver.h +++ src/hg/inc/liftOver.h @@ -1,23 +1,25 @@ /* lift genome annotations between assemblies using chain files */ /* Copyright (C) 2013 The Regents of the University of California * See kent/LICENSE or http://genome.ucsc.edu/license/ for licensing information. */ #ifndef LIFTOVER_H #define LIFTOVER_H +#include "chain.h" + #define LIFTOVER_MINMATCH 0.95 #define LIFTOVER_MINBLOCKS 1.00 enum liftOverFileType { none = 0, bed = 1, positions = 2, }; struct liftOverChain *liftOverChainList(); /* Get list of all liftOver chains in the central database */ void filterOutMissingChains(struct liftOverChain **pChainList); /* Filter out chains that don't exist. Helps partially mirrored sites. */ @@ -105,19 +107,29 @@ double minMatch, double minBlocks, bool fudgeThick, FILE *mapped, FILE *unmapped, boolean multiple); /* Lift over file in genePred format. */ void liftOverSample(char *fileName, struct hash *chainHash, double minMatch, double minBlocks, bool fudgeThick, FILE *mapped, FILE *unmapped); /* Open up sample file, and lift it */ void readLiftOverMap(char *fileName, struct hash *chainHash); /* Read map file into hashes. */ char *liftOverErrHelp(); /* Help message explaining liftOver failures */ +char *remapBlockedBed(struct hash *chainHash, struct bed *bed, + double minMatch, double minBlocks, bool fudgeThick, + bool multiple, char *db, char *chainTable); +/* Remap blocks in bed, and also chromStart/chromEnd. If multiple, then bed->next may be + * changed to point to additional newly allocated mapped beds, and bed's pointer members may + * be free'd so be sure to pass in a properly allocated bed. + * Return NULL on success, an error string on failure. */ + +void liftOverAddChainHash(struct hash *chainHash, struct chain *chain); +/* Add this chain to the hash of chains used by remapBlockedBed */ #endif