b18f2f9facbf4fede2ba522909535f133726c400 braney Mon Sep 7 11:20:43 2026 -0700 bigNet: declare the bigBed types chainNetDbLoad.h uses, refs #20824 bigNetFromInterval takes a struct bbiFile and a struct bigBedInterval, and the header named them without including bigBed.h. Any file that reached chainNetDbLoad.h without bigBed.h ahead of it failed -Werror with "declared inside parameter list", which is where hg/lib/liftOver.c ended up once the generated header dependencies started rebuilding it. diff --git src/hg/inc/chainNetDbLoad.h src/hg/inc/chainNetDbLoad.h index b15d327505e..d3a3b980553 100644 --- src/hg/inc/chainNetDbLoad.h +++ src/hg/inc/chainNetDbLoad.h @@ -1,79 +1,83 @@ /* chainNetDbLoad - This will load a database representation of * a net into a chainNet representation. Also helps database * representation of chain into chain. */ /* Copyright (C) 2002 The Regents of the University of California * See kent/LICENSE or http://genome.ucsc.edu/license/ for licensing information. */ #ifndef CHAINNETDBLOAD_H #define CHAINNETDBLOAD_H #ifndef JKSQL_H #include "jksql.h" #endif #ifndef NETALIGN_H #include "netAlign.h" #endif #ifndef CHAINNET_H #include "chainNet.h" #endif #ifndef BIGNET_H #include "bigNet.h" #endif +#ifndef BIGBED_H +#include "bigBed.h" +#endif + struct cnFill *cnFillFromNetAlign(struct netAlign *na, struct hash *nameHash); /* Convert netAlign to cnFill. Name hash is a place to store * the strings. */ struct chainNet *chainNetLoadResult(struct sqlResult *sr, int rowOffset); /* Given a query result that returns a bunch netAligns, make up * a list of chainNets that has the equivalent information. * Note the net->size field is not filled in. */ struct chainNet *chainNetLoadRange(char *database, char *track, char *chrom, int start, int end, char *extraWhere); /* Load parts of a net track that intersect range. */ struct chainNet *chainNetLoadRangeHub(char *fileName, char *chrom, int start, int end); /* Load the parts of a bigNet file that intersect range into a chainNet. * Note the net->size field is not filled in. */ struct chainNet *chainNetLoadRangeQuickLift(char *quickLiftFile, char *fileName, char *chrom, int start, int end); /* Load the part of a bigNet file that quickLifts into chrom:start-end, and build a * chainNet in the destination assembly's coordinates. Only the target side of the net * moves; the query side describes a third assembly and is carried across untouched. * Note the net->size field is not filled in. */ struct bigNet *bigNetFromInterval(struct bbiFile *bbi, struct bigBedInterval *bb, char *fileName, struct bigNet *bn); /* Fill in bn from one interval of a bigNet file. The chrom name is the one the file * carries, which for a quickLifted net is in the source assembly. */ struct chainNet *chainNetLoadChrom(char *database, char *track, char *chrom, char *extraWhere); /* Load net on whole chromosome. */ struct chain *chainLoadIdRangeHub(char *database, char *fileName, char *track, char *chrom, int start, int end, int id); /* Load parts of chain of given ID from bigChain file. Note the chain header * including score, tStart, tEnd, will still reflect the whole chain, * not just the part in range. However only the blocks of the chain * overlapping the range will be loaded. */ struct chain *chainLoadIdRange(char *database, char *track, char *chrom, int start, int end, int id); /* Load parts of chain of given ID from database. Note the chain header * including score, tStart, tEnd, will still reflect the whole chain, * not just the part in range. However only the blocks of the chain * overlapping the range will be loaded. */ struct chain *chainLoadId(char *database, char *track, char *chrom, int id); /* Load chain of given ID from database. */ #endif /* CHAINNETDBLOAD_H */