src/lib/maf.c 1.42
1.42 2010/05/04 06:18:59 markd
added functions to parse srcDb and src sequence name from mafComp
Index: src/lib/maf.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/lib/maf.c,v
retrieving revision 1.41
retrieving revision 1.42
diff -b -B -U 4 -r1.41 -r1.42
--- src/lib/maf.c 19 Nov 2009 05:31:21 -0000 1.41
+++ src/lib/maf.c 4 May 2010 06:18:59 -0000 1.42
@@ -386,8 +386,32 @@
}
*pList = NULL;
}
+char *mafCompGetSrcDb(struct mafComp *mc, char *buf, int bufSize)
+/* parse the srcDb name from the mafComp src name, return NULL if no srcDb */
+{
+char *e = strchr(mc->src, '.');
+if (e == NULL)
+ return NULL;
+int len = e - mc->src;
+if (len >= bufSize)
+ errAbort("srcDb name in \"%s\" overflows buffer length of %d", mc->src, len);
+strncpy(buf, mc->src, len-1);
+buf[len] = '\0';
+return buf;
+}
+
+char *mafCompGetSrcName(struct mafComp *mc)
+/* parse the src sequence name from the mafComp src name */
+{
+char *e = strchr(mc->src, '.');
+if (e == NULL)
+ return mc->src;
+else
+ return e+1;
+}
+
int mafPlusStart(struct mafComp *comp)
/* Return start relative to plus strand of src. */
{
if (comp->strand == '-')