0713928c047bb0bbc8766e38edbc1b475e3a111b tdreszer Fri Apr 8 17:41:06 2011 -0700 Adjusted encodeExp funtionality to handle compositeless experiments without choking diff --git src/hg/inc/mdb.h src/hg/inc/mdb.h index 955f8dd..3e80bd6 100644 --- src/hg/inc/mdb.h +++ src/hg/inc/mdb.h @@ -399,33 +399,33 @@ /* Compare to sort on label. */ // ----------------- Validation and specialty APIs ----------------- boolean mdbObjIsComposite(struct mdbObj *mdbObj); // returns TRUE if this is a valid composite object boolean mdbObjIsCompositeMember(struct mdbObj *mdbObj); // returns TRUE if this is a valid member of a composite. DOES not confirm that composite obj exists int mdbObjsValidate(struct mdbObj *mdbObjs, boolean full); // Validates vars and vals against cv.ra. Returns count of errors found. // Full considers vars not defined in cv as invalids -struct slName *mdbObjFindCompositeEncodeEdvNames(struct sqlConnection *conn,char *tableName,struct mdbObj *mdbObj); +struct slName *mdbObjFindCompositeNamedEncodeEdvs(struct sqlConnection *conn,char *tableName,struct mdbObj *mdbObj); // returns NULL or the Experiment Defining Variable names for this composite -#define mdbObjFindCompositeEncodeEdvs(conn,mdbObj) mdbObjFindCompositeEncodeEdvNames((conn),NULL,(mdbObj)) +#define mdbObjFindCompositeEncodeEdvs(conn,mdbObj) mdbObjFindCompositeNamedEncodeEdvs((conn),NULL,(mdbObj)) struct mdbVar *mdbObjFindEncodeEdvPairs(struct sqlConnection *conn,char *tableName,struct mdbObj *mdbObj,boolean includeNone); // returns NULL or the Experiment Defining Variables and values for this composite member object // If includeNone, then defined variables not found in obj will be included as {var}="None". #define mdbObjFindEncodeEdvs(conn,mdbObj,includeNone) mdbObjFindEncodeEdvPairs((conn),NULL,(mdbObj),(includeNone)) struct mdbObj *mdbObjsEncodeExperimentify(struct sqlConnection *conn,char *db,char *tableName,struct mdbObj **pMdbObjs, int warn,boolean createExpIfNecessary); // Organizes objects into experiments and validates experiment IDs. Will add/update the ids in the structures. // If warn=1, then prints to stdout all the experiments/obs with missing or wrong expIds; // warn=2, then print line for each obj with expId or warning. // createExpIfNecessary means go ahead and add to the hgFixed.encodeExp table to get an ID // Returns a new set of mdbObjs that is what can (and should) be used to update the mdb via mdbObjsSetToDb(). boolean mdbObjIsEncode(struct mdbObj *mdbObj);