965d1048e8671fb3a5630fe75deb88f24df386d7 kate Wed Aug 13 15:01:59 2014 -0700 Expand schema for GTex. Create tissue short names and use these in sample and data tables. refs #13504 diff --git src/hg/inc/gtexTissueData.h src/hg/inc/gtexTissueData.h new file mode 100644 index 0000000..3178f35 --- /dev/null +++ src/hg/inc/gtexTissueData.h @@ -0,0 +1,64 @@ +/* gtexTissueData.h was originally generated by the autoSql program, which also + * generated gtexTissueData.c and gtexTissueData.sql. This header links the database and + * the RAM representation of objects. */ + +#ifndef GTEXTISSUEDATA_H +#define GTEXTISSUEDATA_H + +#define GTEXTISSUEDATA_NUM_COLS 3 + +extern char *gtexTissueDataCommaSepFieldNames; + +struct gtexTissueData +/* GTEX Expression median level by tissue (RPKM levels, unmapped) */ + { + struct gtexTissueData *next; /* Next in singly linked list. */ + char *geneId; /* Gene identifier (ensembl) */ + unsigned tissueCount; /* Number of tissues */ + float *scores; /* RPKM median expression levels */ + }; + +struct gtexTissueData *gtexTissueDataLoad(char **row); +/* Load a gtexTissueData from row fetched with select * from gtexTissueData + * from database. Dispose of this with gtexTissueDataFree(). */ + +struct gtexTissueData *gtexTissueDataLoadAll(char *fileName); +/* Load all gtexTissueData from whitespace-separated file. + * Dispose of this with gtexTissueDataFreeList(). */ + +struct gtexTissueData *gtexTissueDataLoadAllByChar(char *fileName, char chopper); +/* Load all gtexTissueData from chopper separated file. + * Dispose of this with gtexTissueDataFreeList(). */ + +#define gtexTissueDataLoadAllByTab(a) gtexTissueDataLoadAllByChar(a, '\t'); +/* Load all gtexTissueData from tab separated file. + * Dispose of this with gtexTissueDataFreeList(). */ + +struct gtexTissueData *gtexTissueDataCommaIn(char **pS, struct gtexTissueData *ret); +/* Create a gtexTissueData out of a comma separated string. + * This will fill in ret if non-null, otherwise will + * return a new gtexTissueData */ + +void gtexTissueDataFree(struct gtexTissueData **pEl); +/* Free a single dynamically allocated gtexTissueData such as created + * with gtexTissueDataLoad(). */ + +void gtexTissueDataFreeList(struct gtexTissueData **pList); +/* Free a list of dynamically allocated gtexTissueData's */ + +void gtexTissueDataOutput(struct gtexTissueData *el, FILE *f, char sep, char lastSep); +/* Print out gtexTissueData. Separate fields with sep. Follow last field with lastSep. */ + +#define gtexTissueDataTabOut(el,f) gtexTissueDataOutput(el,f,'\t','\n'); +/* Print out gtexTissueData as a line in a tab-separated file. */ + +#define gtexTissueDataCommaOut(el,f) gtexTissueDataOutput(el,f,',',','); +/* Print out gtexTissueData as a comma separated list including final comma. */ + +/* -------------------------------- End autoSql Generated Code -------------------------------- */ + +void gtexTissueDataCreateTable(struct sqlConnection *conn, char *table); +/* Create expression record format table of given name. */ + +#endif /* GTEXTISSUEDATA_H */ +