30d1f8c9ab3cc2a09c22e35ed257ab51f6bad901 tdreszer Tue Sep 13 11:26:57 2011 -0700 Added mdbPrint option to output ordered table of vars. diff --git src/hg/inc/mdb.h src/hg/inc/mdb.h index 33eb66b..9eca620 100644 --- src/hg/inc/mdb.h +++ src/hg/inc/mdb.h @@ -283,30 +283,35 @@ // ----------- Printing and Counting ----------- void mdbObjPrint(struct mdbObj *mdbObjs,boolean raStyle); // prints objs and var=val pairs as formatted metadata lines or ra style void mdbObjPrintToFile(struct mdbObj *mdbObjs,boolean raStyle, char *file); // prints (to file) objs and var=val pairs as formatted metadata lines or ra style void mdbObjPrintToStream(struct mdbObj *mdbObjs,boolean raStyle, FILE *outF); // prints (to stream) objs and var=val pairs as formatted metadata lines or ra style int mdbObjPrintToTabFile(struct mdbObj *mdbObjs, char *file); // prints all objs as tab delimited obj var val into file for SQL LOAD DATA. Returns count. +void mdbObjPrintOrderedToStream(FILE *outF,struct mdbObj **mdbObjs,char *order, char *seperator, boolean header); +// prints mdbObjs as a table, but only the vars listed in comma delimited order. +// Examples of seperator: " " "\t\t" or "<TD>", in which case this is an HTML table. +// mdbObjs list will be reordered. Sort fails when vars are missing in objs. + char *mdbObjVarValPairsAsLine(struct mdbObj *mdbObj,boolean objTypeExclude,boolean cvLabels); // returns NULL or a line for a single mdbObj as "var1=val1; var2=val2 ...". Must be freed. void mdbByVarPrint(struct mdbByVar *mdbByVars,boolean raStyle); // prints var=val pairs and objs that go with them single lines or ra style int mdbObjCount(struct mdbObj *mdbObjs, boolean objs); // returns the count of vars belonging to this obj or objs; int mdbByVarCount(struct mdbByVar *mdbByVars,boolean vars, boolean vals); // returns the count of objs belonging to this set of vars; // ----------------- Utilities ----------------- struct mdbVar *mdbObjFind(struct mdbObj *mdbObj, char *var); // Finds the val associated with the var or retruns NULL