a44421a79fb36cc2036fe116b97ea3bc9590cd0c
braney
  Fri Dec 2 09:34:39 2011 -0800
removed rcsid (#295)
diff --git src/hg/lib/affy120KDetails.c src/hg/lib/affy120KDetails.c
index bc8255a..7672adb 100644
--- src/hg/lib/affy120KDetails.c
+++ src/hg/lib/affy120KDetails.c
@@ -1,724 +1,723 @@
 /* affy120KDetails.c was originally generated by the autoSql program, which also 
  * generated affy120KDetails.h and affy120KDetails.sql.  This module links the database and
  * the RAM representation of objects. */
 
 #include "common.h"
 #include "linefile.h"
 #include "dystring.h"
 #include "jksql.h"
 #include "affy120KDetails.h"
 
-static char const rcsid[] = "$Id: affy120KDetails.c,v 1.3 2005/04/11 08:13:42 markd Exp $";
 
 void affy120KDetailsStaticLoad(char **row, struct affy120KDetails *ret)
 /* Load a row from affy120KDetails table into ret.  The contents of ret will
  * be replaced at the next call to this function. */
 {
 ret->affyId = sqlSigned(row[0]);
 ret->rsId = row[1];
 strcpy(ret->baseA, row[2]);
 strcpy(ret->baseB, row[3]);
 strcpy(ret->sequenceA, row[4]);
 strcpy(ret->sequenceB, row[5]);
 strcpy(ret->enzyme, row[6]);
 ret->minFreq = atof(row[7]);
 ret->hetzyg = atof(row[8]);
 ret->avHetSE = atof(row[9]);
 strcpy(ret->NA04477, row[10]);
 strcpy(ret->NA04479, row[11]);
 strcpy(ret->NA04846, row[12]);
 strcpy(ret->NA11036, row[13]);
 strcpy(ret->NA11038, row[14]);
 strcpy(ret->NA13056, row[15]);
 strcpy(ret->NA17011, row[16]);
 strcpy(ret->NA17012, row[17]);
 strcpy(ret->NA17013, row[18]);
 strcpy(ret->NA17014, row[19]);
 strcpy(ret->NA17015, row[20]);
 strcpy(ret->NA17016, row[21]);
 strcpy(ret->NA17101, row[22]);
 strcpy(ret->NA17102, row[23]);
 strcpy(ret->NA17103, row[24]);
 strcpy(ret->NA17104, row[25]);
 strcpy(ret->NA17105, row[26]);
 strcpy(ret->NA17106, row[27]);
 strcpy(ret->NA17201, row[28]);
 strcpy(ret->NA17202, row[29]);
 strcpy(ret->NA17203, row[30]);
 strcpy(ret->NA17204, row[31]);
 strcpy(ret->NA17205, row[32]);
 strcpy(ret->NA17206, row[33]);
 strcpy(ret->NA17207, row[34]);
 strcpy(ret->NA17208, row[35]);
 strcpy(ret->NA17210, row[36]);
 strcpy(ret->NA17211, row[37]);
 strcpy(ret->NA17212, row[38]);
 strcpy(ret->NA17213, row[39]);
 strcpy(ret->PD01, row[40]);
 strcpy(ret->PD02, row[41]);
 strcpy(ret->PD03, row[42]);
 strcpy(ret->PD04, row[43]);
 strcpy(ret->PD05, row[44]);
 strcpy(ret->PD06, row[45]);
 strcpy(ret->PD07, row[46]);
 strcpy(ret->PD08, row[47]);
 strcpy(ret->PD09, row[48]);
 strcpy(ret->PD10, row[49]);
 strcpy(ret->PD11, row[50]);
 strcpy(ret->PD12, row[51]);
 strcpy(ret->PD13, row[52]);
 strcpy(ret->PD14, row[53]);
 strcpy(ret->PD15, row[54]);
 strcpy(ret->PD16, row[55]);
 strcpy(ret->PD17, row[56]);
 strcpy(ret->PD18, row[57]);
 strcpy(ret->PD19, row[58]);
 strcpy(ret->PD20, row[59]);
 strcpy(ret->PD21, row[60]);
 strcpy(ret->PD22, row[61]);
 strcpy(ret->PD23, row[62]);
 strcpy(ret->PD24, row[63]);
 }
 
 struct affy120KDetails *affy120KDetailsLoad(char **row)
 /* Load a affy120KDetails from row fetched with select * from affy120KDetails
  * from database.  Dispose of this with affy120KDetailsFree(). */
 {
 struct affy120KDetails *ret;
 
 AllocVar(ret);
 ret->affyId = sqlSigned(row[0]);
 ret->rsId = cloneString(row[1]);
 strcpy(ret->baseA, row[2]);
 strcpy(ret->baseB, row[3]);
 strcpy(ret->sequenceA, row[4]);
 strcpy(ret->sequenceB, row[5]);
 strcpy(ret->enzyme, row[6]);
 ret->minFreq = atof(row[7]);
 ret->hetzyg = atof(row[8]);
 ret->avHetSE = atof(row[9]);
 strcpy(ret->NA04477, row[10]);
 strcpy(ret->NA04479, row[11]);
 strcpy(ret->NA04846, row[12]);
 strcpy(ret->NA11036, row[13]);
 strcpy(ret->NA11038, row[14]);
 strcpy(ret->NA13056, row[15]);
 strcpy(ret->NA17011, row[16]);
 strcpy(ret->NA17012, row[17]);
 strcpy(ret->NA17013, row[18]);
 strcpy(ret->NA17014, row[19]);
 strcpy(ret->NA17015, row[20]);
 strcpy(ret->NA17016, row[21]);
 strcpy(ret->NA17101, row[22]);
 strcpy(ret->NA17102, row[23]);
 strcpy(ret->NA17103, row[24]);
 strcpy(ret->NA17104, row[25]);
 strcpy(ret->NA17105, row[26]);
 strcpy(ret->NA17106, row[27]);
 strcpy(ret->NA17201, row[28]);
 strcpy(ret->NA17202, row[29]);
 strcpy(ret->NA17203, row[30]);
 strcpy(ret->NA17204, row[31]);
 strcpy(ret->NA17205, row[32]);
 strcpy(ret->NA17206, row[33]);
 strcpy(ret->NA17207, row[34]);
 strcpy(ret->NA17208, row[35]);
 strcpy(ret->NA17210, row[36]);
 strcpy(ret->NA17211, row[37]);
 strcpy(ret->NA17212, row[38]);
 strcpy(ret->NA17213, row[39]);
 strcpy(ret->PD01, row[40]);
 strcpy(ret->PD02, row[41]);
 strcpy(ret->PD03, row[42]);
 strcpy(ret->PD04, row[43]);
 strcpy(ret->PD05, row[44]);
 strcpy(ret->PD06, row[45]);
 strcpy(ret->PD07, row[46]);
 strcpy(ret->PD08, row[47]);
 strcpy(ret->PD09, row[48]);
 strcpy(ret->PD10, row[49]);
 strcpy(ret->PD11, row[50]);
 strcpy(ret->PD12, row[51]);
 strcpy(ret->PD13, row[52]);
 strcpy(ret->PD14, row[53]);
 strcpy(ret->PD15, row[54]);
 strcpy(ret->PD16, row[55]);
 strcpy(ret->PD17, row[56]);
 strcpy(ret->PD18, row[57]);
 strcpy(ret->PD19, row[58]);
 strcpy(ret->PD20, row[59]);
 strcpy(ret->PD21, row[60]);
 strcpy(ret->PD22, row[61]);
 strcpy(ret->PD23, row[62]);
 strcpy(ret->PD24, row[63]);
 return ret;
 }
 
 struct affy120KDetails *affy120KDetailsLoadAll(char *fileName) 
 /* Load all affy120KDetails from a whitespace-separated file.
  * Dispose of this with affy120KDetailsFreeList(). */
 {
 struct affy120KDetails *list = NULL, *el;
 struct lineFile *lf = lineFileOpen(fileName, TRUE);
 char *row[64];
 
 while (lineFileRow(lf, row))
     {
     el = affy120KDetailsLoad(row);
     slAddHead(&list, el);
     }
 lineFileClose(&lf);
 slReverse(&list);
 return list;
 }
 
 struct affy120KDetails *affy120KDetailsLoadAllByChar(char *fileName, char chopper) 
 /* Load all affy120KDetails from a chopper separated file.
  * Dispose of this with affy120KDetailsFreeList(). */
 {
 struct affy120KDetails *list = NULL, *el;
 struct lineFile *lf = lineFileOpen(fileName, TRUE);
 char *row[64];
 
 while (lineFileNextCharRow(lf, chopper, row, ArraySize(row)))
     {
     el = affy120KDetailsLoad(row);
     slAddHead(&list, el);
     }
 lineFileClose(&lf);
 slReverse(&list);
 return list;
 }
 
 struct affy120KDetails *affy120KDetailsLoadByQuery(struct sqlConnection *conn, char *query)
 /* Load all affy120KDetails from table that satisfy the query given.  
  * Where query is of the form 'select * from example where something=something'
  * or 'select example.* from example, anotherTable where example.something = 
  * anotherTable.something'.
  * Dispose of this with affy120KDetailsFreeList(). */
 {
 struct affy120KDetails *list = NULL, *el;
 struct sqlResult *sr;
 char **row;
 
 sr = sqlGetResult(conn, query);
 while ((row = sqlNextRow(sr)) != NULL)
     {
     el = affy120KDetailsLoad(row);
     slAddHead(&list, el);
     }
 slReverse(&list);
 sqlFreeResult(&sr);
 return list;
 }
 
 void affy120KDetailsSaveToDb(struct sqlConnection *conn, struct affy120KDetails *el, char *tableName, int updateSize)
 /* Save affy120KDetails as a row to the table specified by tableName. 
  * As blob fields may be arbitrary size updateSize specifies the approx size
  * of a string that would contain the entire query. Arrays of native types are
  * converted to comma separated strings and loaded as such, User defined types are
  * inserted as NULL. Note that strings must be escaped to allow insertion into the database.
  * For example "autosql's features include" --> "autosql\'s features include" 
  * If worried about this use affy120KDetailsSaveToDbEscaped() */
 {
 struct dyString *update = newDyString(updateSize);
 dyStringPrintf(update, "insert into %s values ( %d,'%s','%s','%s','%s','%s','%s',%f,%f,%f,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')", 
 	tableName,  el->affyId,  el->rsId,  el->baseA,  el->baseB,  el->sequenceA,  el->sequenceB,  el->enzyme,  el->minFreq,  el->hetzyg,  el->avHetSE,  el->NA04477,  el->NA04479,  el->NA04846,  el->NA11036,  el->NA11038,  el->NA13056,  el->NA17011,  el->NA17012,  el->NA17013,  el->NA17014,  el->NA17015,  el->NA17016,  el->NA17101,  el->NA17102,  el->NA17103,  el->NA17104,  el->NA17105,  el->NA17106,  el->NA17201,  el->NA17202,  el->NA17203,  el->NA17204,  el->NA17205,  el->NA17206,  el->NA17207,  el->NA17208,  el->NA17210,  el->NA17211,  el->NA17212,  el->NA17213,  el->PD01,  el->PD02,  el->PD03,  el->PD04,  el->PD05,  el->PD06,  el->PD07,  el->PD08,  el->PD09,  el->PD10,  el->PD11,  el->PD12,  el->PD13,  el->PD14,  el->PD15,  el->PD16,  el->PD17,  el->PD18,  el->PD19,  el->PD20,  el->PD21,  el->PD22,  el->PD23,  el->PD24);
 sqlUpdate(conn, update->string);
 freeDyString(&update);
 }
 
 void affy120KDetailsSaveToDbEscaped(struct sqlConnection *conn, struct affy120KDetails *el, char *tableName, int updateSize)
 /* Save affy120KDetails as a row to the table specified by tableName. 
  * As blob fields may be arbitrary size updateSize specifies the approx size.
  * of a string that would contain the entire query. Automatically 
  * escapes all simple strings (not arrays of string) but may be slower than affy120KDetailsSaveToDb().
  * For example automatically copies and converts: 
  * "autosql's features include" --> "autosql\'s features include" 
  * before inserting into database. */ 
 {
 struct dyString *update = newDyString(updateSize);
 char  *rsId, *baseA, *baseB, *sequenceA, *sequenceB, *enzyme, *NA04477, *NA04479, *NA04846, *NA11036, *NA11038, *NA13056, *NA17011, *NA17012, *NA17013, *NA17014, *NA17015, *NA17016, *NA17101, *NA17102, *NA17103, *NA17104, *NA17105, *NA17106, *NA17201, *NA17202, *NA17203, *NA17204, *NA17205, *NA17206, *NA17207, *NA17208, *NA17210, *NA17211, *NA17212, *NA17213, *PD01, *PD02, *PD03, *PD04, *PD05, *PD06, *PD07, *PD08, *PD09, *PD10, *PD11, *PD12, *PD13, *PD14, *PD15, *PD16, *PD17, *PD18, *PD19, *PD20, *PD21, *PD22, *PD23, *PD24;
 rsId = sqlEscapeString(el->rsId);
 baseA = sqlEscapeString(el->baseA);
 baseB = sqlEscapeString(el->baseB);
 sequenceA = sqlEscapeString(el->sequenceA);
 sequenceB = sqlEscapeString(el->sequenceB);
 enzyme = sqlEscapeString(el->enzyme);
 NA04477 = sqlEscapeString(el->NA04477);
 NA04479 = sqlEscapeString(el->NA04479);
 NA04846 = sqlEscapeString(el->NA04846);
 NA11036 = sqlEscapeString(el->NA11036);
 NA11038 = sqlEscapeString(el->NA11038);
 NA13056 = sqlEscapeString(el->NA13056);
 NA17011 = sqlEscapeString(el->NA17011);
 NA17012 = sqlEscapeString(el->NA17012);
 NA17013 = sqlEscapeString(el->NA17013);
 NA17014 = sqlEscapeString(el->NA17014);
 NA17015 = sqlEscapeString(el->NA17015);
 NA17016 = sqlEscapeString(el->NA17016);
 NA17101 = sqlEscapeString(el->NA17101);
 NA17102 = sqlEscapeString(el->NA17102);
 NA17103 = sqlEscapeString(el->NA17103);
 NA17104 = sqlEscapeString(el->NA17104);
 NA17105 = sqlEscapeString(el->NA17105);
 NA17106 = sqlEscapeString(el->NA17106);
 NA17201 = sqlEscapeString(el->NA17201);
 NA17202 = sqlEscapeString(el->NA17202);
 NA17203 = sqlEscapeString(el->NA17203);
 NA17204 = sqlEscapeString(el->NA17204);
 NA17205 = sqlEscapeString(el->NA17205);
 NA17206 = sqlEscapeString(el->NA17206);
 NA17207 = sqlEscapeString(el->NA17207);
 NA17208 = sqlEscapeString(el->NA17208);
 NA17210 = sqlEscapeString(el->NA17210);
 NA17211 = sqlEscapeString(el->NA17211);
 NA17212 = sqlEscapeString(el->NA17212);
 NA17213 = sqlEscapeString(el->NA17213);
 PD01 = sqlEscapeString(el->PD01);
 PD02 = sqlEscapeString(el->PD02);
 PD03 = sqlEscapeString(el->PD03);
 PD04 = sqlEscapeString(el->PD04);
 PD05 = sqlEscapeString(el->PD05);
 PD06 = sqlEscapeString(el->PD06);
 PD07 = sqlEscapeString(el->PD07);
 PD08 = sqlEscapeString(el->PD08);
 PD09 = sqlEscapeString(el->PD09);
 PD10 = sqlEscapeString(el->PD10);
 PD11 = sqlEscapeString(el->PD11);
 PD12 = sqlEscapeString(el->PD12);
 PD13 = sqlEscapeString(el->PD13);
 PD14 = sqlEscapeString(el->PD14);
 PD15 = sqlEscapeString(el->PD15);
 PD16 = sqlEscapeString(el->PD16);
 PD17 = sqlEscapeString(el->PD17);
 PD18 = sqlEscapeString(el->PD18);
 PD19 = sqlEscapeString(el->PD19);
 PD20 = sqlEscapeString(el->PD20);
 PD21 = sqlEscapeString(el->PD21);
 PD22 = sqlEscapeString(el->PD22);
 PD23 = sqlEscapeString(el->PD23);
 PD24 = sqlEscapeString(el->PD24);
 
 dyStringPrintf(update, "insert into %s values ( %d,'%s','%s','%s','%s','%s','%s',%f,%f,%f,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')", 
 	tableName, el->affyId ,  rsId,  baseA,  baseB,  sequenceA,  sequenceB,  enzyme, el->minFreq , el->hetzyg , el->avHetSE ,  NA04477,  NA04479,  NA04846,  NA11036,  NA11038,  NA13056,  NA17011,  NA17012,  NA17013,  NA17014,  NA17015,  NA17016,  NA17101,  NA17102,  NA17103,  NA17104,  NA17105,  NA17106,  NA17201,  NA17202,  NA17203,  NA17204,  NA17205,  NA17206,  NA17207,  NA17208,  NA17210,  NA17211,  NA17212,  NA17213,  PD01,  PD02,  PD03,  PD04,  PD05,  PD06,  PD07,  PD08,  PD09,  PD10,  PD11,  PD12,  PD13,  PD14,  PD15,  PD16,  PD17,  PD18,  PD19,  PD20,  PD21,  PD22,  PD23,  PD24);
 sqlUpdate(conn, update->string);
 freeDyString(&update);
 freez(&rsId);
 freez(&baseA);
 freez(&baseB);
 freez(&sequenceA);
 freez(&sequenceB);
 freez(&enzyme);
 freez(&NA04477);
 freez(&NA04479);
 freez(&NA04846);
 freez(&NA11036);
 freez(&NA11038);
 freez(&NA13056);
 freez(&NA17011);
 freez(&NA17012);
 freez(&NA17013);
 freez(&NA17014);
 freez(&NA17015);
 freez(&NA17016);
 freez(&NA17101);
 freez(&NA17102);
 freez(&NA17103);
 freez(&NA17104);
 freez(&NA17105);
 freez(&NA17106);
 freez(&NA17201);
 freez(&NA17202);
 freez(&NA17203);
 freez(&NA17204);
 freez(&NA17205);
 freez(&NA17206);
 freez(&NA17207);
 freez(&NA17208);
 freez(&NA17210);
 freez(&NA17211);
 freez(&NA17212);
 freez(&NA17213);
 freez(&PD01);
 freez(&PD02);
 freez(&PD03);
 freez(&PD04);
 freez(&PD05);
 freez(&PD06);
 freez(&PD07);
 freez(&PD08);
 freez(&PD09);
 freez(&PD10);
 freez(&PD11);
 freez(&PD12);
 freez(&PD13);
 freez(&PD14);
 freez(&PD15);
 freez(&PD16);
 freez(&PD17);
 freez(&PD18);
 freez(&PD19);
 freez(&PD20);
 freez(&PD21);
 freez(&PD22);
 freez(&PD23);
 freez(&PD24);
 }
 
 struct affy120KDetails *affy120KDetailsCommaIn(char **pS, struct affy120KDetails *ret)
 /* Create a affy120KDetails out of a comma separated string. 
  * This will fill in ret if non-null, otherwise will
  * return a new affy120KDetails */
 {
 char *s = *pS;
 
 if (ret == NULL)
     AllocVar(ret);
 ret->affyId = sqlSignedComma(&s);
 ret->rsId = sqlStringComma(&s);
 sqlFixedStringComma(&s, ret->baseA, sizeof(ret->baseA));
 sqlFixedStringComma(&s, ret->baseB, sizeof(ret->baseB));
 sqlFixedStringComma(&s, ret->sequenceA, sizeof(ret->sequenceA));
 sqlFixedStringComma(&s, ret->sequenceB, sizeof(ret->sequenceB));
 sqlFixedStringComma(&s, ret->enzyme, sizeof(ret->enzyme));
 ret->minFreq = sqlFloatComma(&s);
 ret->hetzyg = sqlFloatComma(&s);
 ret->avHetSE = sqlFloatComma(&s);
 sqlFixedStringComma(&s, ret->NA04477, sizeof(ret->NA04477));
 sqlFixedStringComma(&s, ret->NA04479, sizeof(ret->NA04479));
 sqlFixedStringComma(&s, ret->NA04846, sizeof(ret->NA04846));
 sqlFixedStringComma(&s, ret->NA11036, sizeof(ret->NA11036));
 sqlFixedStringComma(&s, ret->NA11038, sizeof(ret->NA11038));
 sqlFixedStringComma(&s, ret->NA13056, sizeof(ret->NA13056));
 sqlFixedStringComma(&s, ret->NA17011, sizeof(ret->NA17011));
 sqlFixedStringComma(&s, ret->NA17012, sizeof(ret->NA17012));
 sqlFixedStringComma(&s, ret->NA17013, sizeof(ret->NA17013));
 sqlFixedStringComma(&s, ret->NA17014, sizeof(ret->NA17014));
 sqlFixedStringComma(&s, ret->NA17015, sizeof(ret->NA17015));
 sqlFixedStringComma(&s, ret->NA17016, sizeof(ret->NA17016));
 sqlFixedStringComma(&s, ret->NA17101, sizeof(ret->NA17101));
 sqlFixedStringComma(&s, ret->NA17102, sizeof(ret->NA17102));
 sqlFixedStringComma(&s, ret->NA17103, sizeof(ret->NA17103));
 sqlFixedStringComma(&s, ret->NA17104, sizeof(ret->NA17104));
 sqlFixedStringComma(&s, ret->NA17105, sizeof(ret->NA17105));
 sqlFixedStringComma(&s, ret->NA17106, sizeof(ret->NA17106));
 sqlFixedStringComma(&s, ret->NA17201, sizeof(ret->NA17201));
 sqlFixedStringComma(&s, ret->NA17202, sizeof(ret->NA17202));
 sqlFixedStringComma(&s, ret->NA17203, sizeof(ret->NA17203));
 sqlFixedStringComma(&s, ret->NA17204, sizeof(ret->NA17204));
 sqlFixedStringComma(&s, ret->NA17205, sizeof(ret->NA17205));
 sqlFixedStringComma(&s, ret->NA17206, sizeof(ret->NA17206));
 sqlFixedStringComma(&s, ret->NA17207, sizeof(ret->NA17207));
 sqlFixedStringComma(&s, ret->NA17208, sizeof(ret->NA17208));
 sqlFixedStringComma(&s, ret->NA17210, sizeof(ret->NA17210));
 sqlFixedStringComma(&s, ret->NA17211, sizeof(ret->NA17211));
 sqlFixedStringComma(&s, ret->NA17212, sizeof(ret->NA17212));
 sqlFixedStringComma(&s, ret->NA17213, sizeof(ret->NA17213));
 sqlFixedStringComma(&s, ret->PD01, sizeof(ret->PD01));
 sqlFixedStringComma(&s, ret->PD02, sizeof(ret->PD02));
 sqlFixedStringComma(&s, ret->PD03, sizeof(ret->PD03));
 sqlFixedStringComma(&s, ret->PD04, sizeof(ret->PD04));
 sqlFixedStringComma(&s, ret->PD05, sizeof(ret->PD05));
 sqlFixedStringComma(&s, ret->PD06, sizeof(ret->PD06));
 sqlFixedStringComma(&s, ret->PD07, sizeof(ret->PD07));
 sqlFixedStringComma(&s, ret->PD08, sizeof(ret->PD08));
 sqlFixedStringComma(&s, ret->PD09, sizeof(ret->PD09));
 sqlFixedStringComma(&s, ret->PD10, sizeof(ret->PD10));
 sqlFixedStringComma(&s, ret->PD11, sizeof(ret->PD11));
 sqlFixedStringComma(&s, ret->PD12, sizeof(ret->PD12));
 sqlFixedStringComma(&s, ret->PD13, sizeof(ret->PD13));
 sqlFixedStringComma(&s, ret->PD14, sizeof(ret->PD14));
 sqlFixedStringComma(&s, ret->PD15, sizeof(ret->PD15));
 sqlFixedStringComma(&s, ret->PD16, sizeof(ret->PD16));
 sqlFixedStringComma(&s, ret->PD17, sizeof(ret->PD17));
 sqlFixedStringComma(&s, ret->PD18, sizeof(ret->PD18));
 sqlFixedStringComma(&s, ret->PD19, sizeof(ret->PD19));
 sqlFixedStringComma(&s, ret->PD20, sizeof(ret->PD20));
 sqlFixedStringComma(&s, ret->PD21, sizeof(ret->PD21));
 sqlFixedStringComma(&s, ret->PD22, sizeof(ret->PD22));
 sqlFixedStringComma(&s, ret->PD23, sizeof(ret->PD23));
 sqlFixedStringComma(&s, ret->PD24, sizeof(ret->PD24));
 *pS = s;
 return ret;
 }
 
 void affy120KDetailsFree(struct affy120KDetails **pEl)
 /* Free a single dynamically allocated affy120KDetails such as created
  * with affy120KDetailsLoad(). */
 {
 struct affy120KDetails *el;
 
 if ((el = *pEl) == NULL) return;
 freeMem(el->rsId);
 freez(pEl);
 }
 
 void affy120KDetailsFreeList(struct affy120KDetails **pList)
 /* Free a list of dynamically allocated affy120KDetails's */
 {
 struct affy120KDetails *el, *next;
 
 for (el = *pList; el != NULL; el = next)
     {
     next = el->next;
     affy120KDetailsFree(&el);
     }
 *pList = NULL;
 }
 
 void affy120KDetailsOutput(struct affy120KDetails *el, FILE *f, char sep, char lastSep) 
 /* Print out affy120KDetails.  Separate fields with sep. Follow last field with lastSep. */
 {
 fprintf(f, "%d", el->affyId);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->rsId);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->baseA);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->baseB);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->sequenceA);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->sequenceB);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->enzyme);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 fprintf(f, "%f", el->minFreq);
 fputc(sep,f);
 fprintf(f, "%f", el->hetzyg);
 fputc(sep,f);
 fprintf(f, "%f", el->avHetSE);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA04477);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA04479);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA04846);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA11036);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA11038);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA13056);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17011);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17012);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17013);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17014);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17015);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17016);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17101);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17102);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17103);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17104);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17105);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17106);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17201);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17202);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17203);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17204);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17205);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17206);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17207);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17208);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17210);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17211);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17212);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->NA17213);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD01);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD02);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD03);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD04);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD05);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD06);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD07);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD08);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD09);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD10);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD11);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD12);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD13);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD14);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD15);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD16);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD17);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD18);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD19);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD20);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD21);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD22);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD23);
 if (sep == ',') fputc('"',f);
 fputc(sep,f);
 if (sep == ',') fputc('"',f);
 fprintf(f, "%s", el->PD24);
 if (sep == ',') fputc('"',f);
 fputc(lastSep,f);
 }
 
 /* -------------------------------- End autoSql Generated Code -------------------------------- */