cfb63bd22072217bc504665d8abeb5f81587c8d7 hiram Thu Sep 15 18:09:14 2016 -0700 better to call chromXref as chromAlias and now is a three column table with primary key refs #18027 diff --git src/hg/lib/chromAlias.h src/hg/lib/chromAlias.h new file mode 100644 index 0000000..9b91954 --- /dev/null +++ src/hg/lib/chromAlias.h @@ -0,0 +1,68 @@ +/* chromAlias.h was originally generated by the autoSql program, which also + * generated chromAlias.c and chromAlias.sql. This header links the database and + * the RAM representation of objects. */ + +#ifndef CHROMALIAS_H +#define CHROMALIAS_H + +#define CHROMALIAS_NUM_COLS 3 + +extern char *chromAliasCommaSepFieldNames; + +struct chromAlias +/* correspondence of UCSC chromosome names to refseq, genbank, and ensembl names */ + { + struct chromAlias *next; /* Next in singly linked list. */ + char *alias; /* external name */ + char *chrom; /* UCSC genome browser chromosome name */ + char *source; /* comma separated list, when available: refseq,genbank,ensembl */ + }; + +void chromAliasStaticLoad(char **row, struct chromAlias *ret); +/* Load a row from chromAlias table into ret. The contents of ret will + * be replaced at the next call to this function. */ + +struct chromAlias *chromAliasLoad(char **row); +/* Load a chromAlias from row fetched with select * from chromAlias + * from database. Dispose of this with chromAliasFree(). */ + +struct chromAlias *chromAliasLoadAll(char *fileName); +/* Load all chromAlias from whitespace-separated file. + * Dispose of this with chromAliasFreeList(). */ + +struct chromAlias *chromAliasLoadAllByChar(char *fileName, char chopper); +/* Load all chromAlias from chopper separated file. + * Dispose of this with chromAliasFreeList(). */ + +#define chromAliasLoadAllByTab(a) chromAliasLoadAllByChar(a, '\t'); +/* Load all chromAlias from tab separated file. + * Dispose of this with chromAliasFreeList(). */ + +struct chromAlias *chromAliasCommaIn(char **pS, struct chromAlias *ret); +/* Create a chromAlias out of a comma separated string. + * This will fill in ret if non-null, otherwise will + * return a new chromAlias */ + +void chromAliasFree(struct chromAlias **pEl); +/* Free a single dynamically allocated chromAlias such as created + * with chromAliasLoad(). */ + +void chromAliasFreeList(struct chromAlias **pList); +/* Free a list of dynamically allocated chromAlias's */ + +void chromAliasOutput(struct chromAlias *el, FILE *f, char sep, char lastSep); +/* Print out chromAlias. Separate fields with sep. Follow last field with lastSep. */ + +#define chromAliasTabOut(el,f) chromAliasOutput(el,f,'\t','\n'); +/* Print out chromAlias as a line in a tab-separated file. */ + +#define chromAliasCommaOut(el,f) chromAliasOutput(el,f,',',','); +/* Print out chromAlias as a comma separated list including final comma. */ + +void chromAliasJsonOutput(struct chromAlias *el, FILE *f); +/* Print out chromAlias in JSON format. */ + +/* -------------------------------- End autoSql Generated Code -------------------------------- */ + +#endif /* CHROMALIAS_H */ +