96442f8cb891c4f1282446f416ef9f92bc7092a1
markd
  Tue Oct 25 13:41:03 2016 -0700
add option to genePredCheck to get chromsome sizes from file

diff --git src/hg/inc/genePred.h src/hg/inc/genePred.h
index f60b8a3..f2707c9 100644
--- src/hg/inc/genePred.h
+++ src/hg/inc/genePred.h
@@ -295,30 +295,36 @@
 /* Get the CDS range in an exon.  If there is no CDS, return FALSE and then
  * set start == end */
 
 int genePredCheck(char *desc, FILE* errFh, int chromSize, 
                   struct genePred* gp);
 /* Validate a genePred for consistency.  desc is printed the error messages
  * to file errFh (open /dev/null to discard).  chromSize should contain
  * size of chromosome, or 0 if chrom is not valid, or -1 to not check
  * chromosome bounds. Returns count of errors. */
 
 int genePredCheckDb(char *desc, FILE* errFh, char* db, struct genePred* gp);
 /* Validate a genePred for consistency.  desc is printed the error messages
  * to file errFh (open /dev/null to discard).  Lookup chromosome size in database if
  * db is not NULL. Returns count of errors. */
 
+int genePredCheckChromSizes(char *desc, FILE* errFh, struct genePred* gp,
+                            struct hash* chromSizes);
+/* Validate a genePred for consistency.  desc is printed the error messages
+ * to file errFh (open /dev/null to discard).  Lookup chromosome size in hash.
+ */
+
 boolean genePredNmdTarget(struct genePred *gp);
 /* Return TRUE if cds end is more than 50bp upstream of
    last intron. */
 
 void genePredAddExonFrames(struct genePred *gp);
 /* Add exonFrames array to a genePred that doesn't have it. Frame is assumed
  * to be contiguous. */
 
 void genePredRc(struct genePred *gp, int chromSize);
 /* Reverse complement a genePred (project it to the opposite strand).  Useful
  * when doing analysis that is simplified by having things on the same strand.
  */
 
 int genePredCdsSize(struct genePred *gp);
 /* compute the number of bases of CDS */