e745ccb794a88cf79f4e63a375a3eeb93e918563
braney
  Mon Jan 26 10:15:44 2026 -0800
move code to reverse exonFrames to calcLiftOverGenePred() so it will
work with the liftOver tool

diff --git src/hg/inc/genePred.h src/hg/inc/genePred.h
index ef1598aeaf1..9d5a3c93c07 100644
--- src/hg/inc/genePred.h
+++ src/hg/inc/genePred.h
@@ -118,31 +118,30 @@
     unsigned *exonStarts;	/* Exon start positions */
     unsigned *exonEnds;	/* Exon end positions */
 
     /* optional fields */
     unsigned optFields;           /* which optional fields are used (not in
                                    * database) */
     int score;                    /* score */
     char *name2;                  /* Secondary name. (e.g. name of gene), or
                                    * empty if none, NULL if field not
                                    * requested */
     enum cdsStatus cdsStartStat;  /* Status of cdsStart annotation */
     enum cdsStatus cdsEndStat;    /* Status of cdsEnd annotation */
     int *exonFrames;              /* List of frame for each exon, or -1
                                    * if no frame or not known. NULL if not
                                    * available. */
-    char origStrand;              /* if quickLifted, this is the original strand. */
 };
 
 /* Standard value to use for insertMergeSize when creating genePred.
  * Set to 8 due to microdeletions.
  */
 #define genePredStdInsertMergeSize 8
 
 #define GENEPRED_NUM_COLS 10  /* number of columns in a genePred */
 #define GENEPREDX_NUM_COLS 15  /* max number of columns in extended genePred */
 
 struct genePred *genePredLoad(char **row);
 /* Load a genePred from row fetched with select * from genePred
  * from database.  Dispose of this with genePredFree(). 
  * NOTE: cannabalizes the row argument */
 
@@ -406,16 +405,19 @@
  * used. If protRet or cdsRet is NULL, those sequences are not returned.
  */
 
 void genePredToCds(struct genePred *gp, struct genbankCds *cds);
 /* Fill in cds with transcript offsets computed from genePred. */
 
 struct psl *genePredToPsl(struct genePred *gp, int chromSize, int qSize);
 /* Convert a genePred to psl, assuming perfect concordance between target & query.
  * If qSize is 0 then the number of aligned bases will be used as qSize. */
 
 struct genePredExt  *genePredFromBedBigGenePred( char *chrom, struct bed *bed, struct bigBedInterval *bb, boolean changedStrand);
 /* build a genePred from a bigGenePred and a bed file */
 
 struct genePred *genePredExtLoad15(char **row);
 /* Load a genePred record assumed to be 15 fields. */
+
+void genePredReverseFrames(struct genePred *gp);
+// Reverse exon frames for this genePred
 #endif /* GENEPRED_H */