src/hg/instinct/lib/raDb.c 1.2
1.2 2010/05/26 21:28:40 cszeto
Added microscope toggle support
Index: src/hg/instinct/lib/raDb.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/instinct/lib/raDb.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -b -B -U 1000000 -r1.1 -r1.2
--- src/hg/instinct/lib/raDb.c 12 Apr 2010 17:16:10 -0000 1.1
+++ src/hg/instinct/lib/raDb.c 26 May 2010 21:28:40 -0000 1.2
@@ -1,784 +1,784 @@
/* raDb.c was originally generated by the autoSql program, which also
* generated raDb.h and raDb.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 "raDb.h"
static char const rcsid[] = "$Id$";
void raDbStaticLoadWithNull(char **row, struct raDb *ret)
/* Load a row from raDb table into ret. The contents of ret will
* be replaced at the next call to this function. */
{
if (row[0] != NULL)
{
ret->id = needMem(sizeof(*(ret->id)));
*(ret->id) = sqlUnsigned(row[0]);
}
else
{
ret->id = NULL;
}
ret->name = row[1];
ret->accessTable = row[2];
ret->shortLabel = row[3];
ret->longLabel = row[4];
if (row[5] != NULL)
{
ret->expCount = needMem(sizeof(*(ret->expCount)));
*(ret->expCount) = sqlUnsigned(row[5]);
}
else
{
ret->expCount = NULL;
}
if (row[6] != NULL)
{
ret->height = needMem(sizeof(*(ret->height)));
*(ret->height) = sqlUnsigned(row[6]);
}
else
{
ret->height = NULL;
}
ret->groupName = row[7];
ret->raFile = row[8];
ret->patDb = row[9];
-ret->sampleField = row[10];
-ret->patTable = row[11];
-ret->patField = row[12];
-ret->aliasTable = row[13];
-ret->displayNameTable = row[14];
-ret->dataType = row[15];
-ret->platform = row[16];
-if (row[17] != NULL)
+ret->microscope = row[10];
+ret->sampleField = row[11];
+ret->patTable = row[12];
+ret->patField = row[13];
+ret->aliasTable = row[14];
+ret->displayNameTable = row[15];
+ret->dataType = row[16];
+ret->platform = row[17];
+if (row[18] != NULL)
{
ret->expScale = needMem(sizeof(float));
- *(ret->expScale) = sqlFloat(row[17]);
+ *(ret->expScale) = sqlFloat(row[18]);
}
-if (row[18] != NULL)
+if (row[19] != NULL)
{
ret->gainFull = needMem(sizeof(float));
- *(ret->gainFull) = sqlFloat(row[18]);
+ *(ret->gainFull) = sqlFloat(row[19]);
}
-if (row[19] != NULL)
+if (row[20] != NULL)
{
ret->gainSet = needMem(sizeof(float));
- *(ret->gainSet) = sqlFloat(row[19]);
+ *(ret->gainSet) = sqlFloat(row[20]);
}
-ret->type = row[20];
-ret->visibility = row[21];
-if (row[22] != NULL)
+ret->type = row[21];
+ret->visibility = row[22];
+if (row[23] != NULL)
{
ret->priority = needMem(sizeof(float));
- *(ret->priority) = sqlFloat(row[22]);
+ *(ret->priority) = sqlFloat(row[23]);
}
-ret->url = row[23];
-ret->security = row[24];
-ret->local_url = row[25];
+ret->url = row[24];
+ret->security = row[25];
ret->profile = row[26];
ret->wrangler = row[27];
ret->citation = row[28];
ret->article_title = row[29];
ret->author_list = row[30];
ret->wrangling_procedure = row[31];
}
struct raDb *raDbLoadByQuery(struct sqlConnection *conn, char *query)
/* Load all raDb 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 raDbFreeList(). */
{
struct raDb *list = NULL, *el;
struct sqlResult *sr;
char **row;
sr = sqlGetResult(conn, query);
while ((row = sqlNextRow(sr)) != NULL)
{
el = raDbLoadWithNull(row);
slAddHead(&list, el);
}
slReverse(&list);
sqlFreeResult(&sr);
return list;
}
void raDbSaveToDb(struct sqlConnection *conn, struct raDb *el, char *tableName, int updateSize)
/* Save raDb 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 raDbSaveToDbEscaped() */
{
struct dyString *update = newDyString(updateSize);
-dyStringPrintf(update, "insert into %s values ( %u,'%s','%s','%s','%s',%u,%u,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%g,%g,%g,'%s','%s',%g,'%s','%s','%s','%s','%s','%s','%s','%s','%s')",
- tableName, *(el->id), el->name, el->accessTable, el->shortLabel, el->longLabel, *(el->expCount), *(el->height), el->groupName, el->raFile, el->patDb, el->sampleField, el->patTable, el->patField, el->aliasTable, el->displayNameTable, el->dataType, el->platform, *(el->expScale), *(el->gainFull), *(el->gainSet), el->type, el->visibility, *(el->priority), el->url, el->security, el->local_url, el->profile, el->wrangler, el->citation, (el->article_title), (el->author_list), (el->wrangling_procedure));
+dyStringPrintf(update, "insert into %s values ( %u,'%s','%s','%s','%s',%u,%u,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%g,%g,%g,'%s','%s',%g,'%s','%s','%s','%s','%s',%s,%s,%s)",
+ tableName, *(el->id), el->name, el->accessTable, el->shortLabel, el->longLabel, *(el->expCount), *(el->height), el->groupName, el->raFile, el->patDb, el->microscope, el->sampleField, el->patTable, el->patField, el->aliasTable, el->displayNameTable, el->dataType, el->platform, *(el->expScale), *(el->gainFull), *(el->gainSet), el->type, el->visibility, *(el->priority), el->url, el->security, el->profile, el->wrangler, el->citation, (el->article_title), (el->author_list), (el->wrangling_procedure));
sqlUpdate(conn, update->string);
freeDyString(&update);
}
void raDbSaveToDbEscaped(struct sqlConnection *conn, struct raDb *el, char *tableName, int updateSize)
/* Save raDb 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 raDbSaveToDb().
* For example automatically copies and converts:
* "autosql's features include" --> "autosql\'s features include"
* before inserting into database. */
{
struct dyString *update = newDyString(updateSize);
-char *name, *accessTable, *shortLabel, *longLabel, *groupName, *raFile, *patDb, *sampleField, *patTable, *patField, *aliasTable, *displayNameTable, *dataType, *platform, *type, *visibility, *url, *security, *local_url, *profile, *wrangler, *citation, *article_title, *author_list, *wrangling_procedure;
+char *name, *accessTable, *shortLabel, *longLabel, *groupName, *raFile, *patDb, *microscope, *sampleField, *patTable, *patField, *aliasTable, *displayNameTable, *dataType, *platform, *type, *visibility, *url, *security, *profile, *wrangler, *citation, *article_title, *author_list, *wrangling_procedure;
name = sqlEscapeString(el->name);
accessTable = sqlEscapeString(el->accessTable);
shortLabel = sqlEscapeString(el->shortLabel);
longLabel = sqlEscapeString(el->longLabel);
groupName = sqlEscapeString(el->groupName);
raFile = sqlEscapeString(el->raFile);
patDb = sqlEscapeString(el->patDb);
+microscope = sqlEscapeString(el->microscope);
sampleField = sqlEscapeString(el->sampleField);
patTable = sqlEscapeString(el->patTable);
patField = sqlEscapeString(el->patField);
aliasTable = sqlEscapeString(el->aliasTable);
displayNameTable = sqlEscapeString(el->displayNameTable);
dataType = sqlEscapeString(el->dataType);
platform = sqlEscapeString(el->platform);
type = sqlEscapeString(el->type);
visibility = sqlEscapeString(el->visibility);
url = sqlEscapeString(el->url);
security = sqlEscapeString(el->security);
-local_url = sqlEscapeString(el->local_url);
profile = sqlEscapeString(el->profile);
wrangler = sqlEscapeString(el->wrangler);
citation = sqlEscapeString(el->citation);
article_title = sqlEscapeString(el->article_title);
author_list = sqlEscapeString(el->author_list);
wrangling_procedure = sqlEscapeString(el->wrangling_procedure);
-dyStringPrintf(update, "insert into %s values ( %u,'%s','%s','%s','%s',%u,%u,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%g,%g,%g,'%s','%s',%g,'%s','%s','%s','%s','%s','%s','%s','%s','%s')",
- tableName, *(el->id), name, accessTable, shortLabel, longLabel, *(el->expCount), *(el->height), groupName, raFile, patDb, sampleField, patTable, patField, aliasTable, displayNameTable, dataType, platform, *(el->expScale), *(el->gainFull), *(el->gainSet), type, visibility, *(el->priority), url, security, local_url, profile, wrangler, citation, article_title, author_list, wrangling_procedure);
+dyStringPrintf(update, "insert into %s values ( %u,'%s','%s','%s','%s',%u,%u,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%g,%g,%g,'%s','%s',%g,'%s','%s','%s','%s','%s','%s','%s','%s')",
+ tableName, *(el->id), name, accessTable, shortLabel, longLabel, *(el->expCount), *(el->height), groupName, raFile, patDb, microscope, sampleField, patTable, patField, aliasTable, displayNameTable, dataType, platform, *(el->expScale), *(el->gainFull), *(el->gainSet), type, visibility, *(el->priority), url, security, profile, wrangler, citation, article_title, author_list, wrangling_procedure);
sqlUpdate(conn, update->string);
freeDyString(&update);
freez(&name);
freez(&accessTable);
freez(&shortLabel);
freez(&longLabel);
freez(&groupName);
freez(&raFile);
freez(&patDb);
+freez(µscope);
freez(&sampleField);
freez(&patTable);
freez(&patField);
freez(&aliasTable);
freez(&displayNameTable);
freez(&dataType);
freez(&platform);
freez(&type);
freez(&visibility);
freez(&url);
freez(&security);
-freez(&local_url);
freez(&profile);
freez(&wrangler);
freez(&citation);
freez(&article_title);
freez(&author_list);
freez(&wrangling_procedure);
}
struct raDb *raDbLoadWithNull(char **row)
/* Load a raDb from row fetched with select * from raDb
* from database. Dispose of this with raDbFree(). */
{
struct raDb *ret;
AllocVar(ret);
if (row[0] != NULL)
{
ret->id = needMem(sizeof(*(ret->id)));
*(ret->id) = sqlUnsigned(row[0]);
}
else
{
ret->id = NULL;
}
ret->name = cloneString(row[1]);
ret->accessTable = cloneString(row[2]);
ret->shortLabel = cloneString(row[3]);
ret->longLabel = cloneString(row[4]);
if (row[5] != NULL)
{
ret->expCount = needMem(sizeof(*(ret->expCount)));
*(ret->expCount) = sqlUnsigned(row[5]);
}
else
{
ret->expCount = NULL;
}
if (row[6] != NULL)
{
ret->height = needMem(sizeof(*(ret->height)));
*(ret->height) = sqlUnsigned(row[6]);
}
else
{
ret->height = NULL;
}
ret->groupName = cloneString(row[7]);
ret->raFile = cloneString(row[8]);
ret->patDb = cloneString(row[9]);
-ret->sampleField = cloneString(row[10]);
-ret->patTable = cloneString(row[11]);
-ret->patField = cloneString(row[12]);
-ret->aliasTable = cloneString(row[13]);
-ret->displayNameTable = cloneString(row[14]);
-ret->dataType = cloneString(row[15]);
-ret->platform = cloneString(row[16]);
-if (row[17] != NULL)
+ret->microscope = cloneString(row[10]);
+ret->sampleField = cloneString(row[11]);
+ret->patTable = cloneString(row[12]);
+ret->patField = cloneString(row[13]);
+ret->aliasTable = cloneString(row[14]);
+ret->displayNameTable = cloneString(row[15]);
+ret->dataType = cloneString(row[16]);
+ret->platform = cloneString(row[17]);
+if (row[18] != NULL)
{
ret->expScale = needMem(sizeof(float));
- *(ret->expScale) = sqlFloat(row[17]);
+ *(ret->expScale) = sqlFloat(row[18]);
}
-if (row[18] != NULL)
+if (row[19] != NULL)
{
ret->gainFull = needMem(sizeof(float));
- *(ret->gainFull) = sqlFloat(row[18]);
+ *(ret->gainFull) = sqlFloat(row[19]);
}
-if (row[19] != NULL)
+if (row[20] != NULL)
{
ret->gainSet = needMem(sizeof(float));
- *(ret->gainSet) = sqlFloat(row[19]);
+ *(ret->gainSet) = sqlFloat(row[20]);
}
-ret->type = cloneString(row[20]);
-ret->visibility = cloneString(row[21]);
-if (row[22] != NULL)
+ret->type = cloneString(row[21]);
+ret->visibility = cloneString(row[22]);
+if (row[23] != NULL)
{
ret->priority = needMem(sizeof(float));
- *(ret->priority) = sqlFloat(row[22]);
+ *(ret->priority) = sqlFloat(row[23]);
}
-ret->url = cloneString(row[23]);
-ret->security = cloneString(row[24]);
-ret->local_url = cloneString(row[25]);
+ret->url = cloneString(row[24]);
+ret->security = cloneString(row[25]);
ret->profile = cloneString(row[26]);
ret->wrangler = cloneString(row[27]);
ret->citation = cloneString(row[28]);
ret->article_title = cloneString(row[29]);
ret->author_list = cloneString(row[30]);
ret->wrangling_procedure = cloneString(row[31]);
return ret;
}
struct raDb *raDbLoadAll(char *fileName)
/* Load all raDb from a whitespace-separated file.
* Dispose of this with raDbFreeList(). */
{
struct raDb *list = NULL, *el;
struct lineFile *lf = lineFileOpen(fileName, TRUE);
char *row[32];
while (lineFileRow(lf, row))
{
el = raDbLoadWithNull(row);
slAddHead(&list, el);
}
lineFileClose(&lf);
slReverse(&list);
return list;
}
struct raDb *raDbLoadAllByChar(char *fileName, char chopper)
/* Load all raDb from a chopper separated file.
* Dispose of this with raDbFreeList(). */
{
struct raDb *list = NULL, *el;
struct lineFile *lf = lineFileOpen(fileName, TRUE);
char *row[32];
while (lineFileNextCharRow(lf, chopper, row, ArraySize(row)))
{
el = raDbLoadWithNull(row);
slAddHead(&list, el);
}
lineFileClose(&lf);
slReverse(&list);
return list;
}
struct raDb *raDbCommaIn(char **pS, struct raDb *ret)
/* Create a raDb out of a comma separated string.
* This will fill in ret if non-null, otherwise will
* return a new raDb */
{
char *s = *pS;
if (ret == NULL)
AllocVar(ret);
ret->id = needMem(sizeof(unsigned));
*(ret->id) = sqlUnsignedComma(&s);
ret->name = sqlStringComma(&s);
ret->accessTable = sqlStringComma(&s);
ret->shortLabel = sqlStringComma(&s);
ret->longLabel = sqlStringComma(&s);
ret->expCount = needMem(sizeof(unsigned));
*(ret->expCount) = sqlUnsignedComma(&s);
ret->height = needMem(sizeof(unsigned));
*(ret->height) = sqlUnsignedComma(&s);
ret->groupName = sqlStringComma(&s);
ret->raFile = sqlStringComma(&s);
ret->patDb = sqlStringComma(&s);
+ret->microscope = sqlStringComma(&s);
ret->sampleField = sqlStringComma(&s);
ret->patTable = sqlStringComma(&s);
ret->patField = sqlStringComma(&s);
ret->aliasTable = sqlStringComma(&s);
ret->displayNameTable = sqlStringComma(&s);
ret->dataType = sqlStringComma(&s);
ret->platform = sqlStringComma(&s);
ret->expScale = needMem(sizeof(*(ret->expScale)));
*(ret->expScale) = sqlFloatComma(&s);
ret->gainFull = needMem(sizeof(*(ret->gainFull)));
*(ret->gainFull) = sqlFloatComma(&s);
ret->gainSet = needMem(sizeof(*(ret->gainSet)));
*(ret->gainSet) = sqlFloatComma(&s);
ret->type = sqlStringComma(&s);
ret->visibility = sqlStringComma(&s);
ret->priority = needMem(sizeof(*(ret->priority)));
*(ret->priority) = sqlFloatComma(&s);
ret->url = sqlStringComma(&s);
ret->security = sqlStringComma(&s);
-ret->local_url = sqlStringComma(&s);
ret->profile = sqlStringComma(&s);
ret->wrangler = sqlStringComma(&s);
ret->citation = sqlStringComma(&s);
ret->article_title = sqlStringComma(&s);
ret->author_list = sqlStringComma(&s);
ret->wrangling_procedure = sqlStringComma(&s);
*pS = s;
return ret;
}
void raDbFree(struct raDb **pEl)
/* Free a single dynamically allocated raDb such as created
* with raDbLoad(). */
{
struct raDb *el;
if ((el = *pEl) == NULL) return;
freeMem(el->name);
freeMem(el->accessTable);
freeMem(el->shortLabel);
freeMem(el->longLabel);
freeMem(el->groupName);
freeMem(el->raFile);
freeMem(el->patDb);
+freeMem(el->microscope);
freeMem(el->sampleField);
freeMem(el->patTable);
freeMem(el->patField);
freeMem(el->aliasTable);
freeMem(el->displayNameTable);
freeMem(el->dataType);
freeMem(el->platform);
freeMem(el->type);
freeMem(el->visibility);
freeMem(el->url);
freeMem(el->security);
-freeMem(el->local_url);
freeMem(el->profile);
freeMem(el->wrangler);
freeMem(el->citation);
freeMem(el->article_title);
freeMem(el->author_list);
freeMem(el->wrangling_procedure);
freez(pEl);
}
void raDbFreeList(struct raDb **pList)
/* Free a list of dynamically allocated raDb's */
{
struct raDb *el, *next;
for (el = *pList; el != NULL; el = next)
{
next = el->next;
raDbFree(&el);
}
*pList = NULL;
}
void raDbOutput(struct raDb *el, FILE *f, char sep, char lastSep)
/* Print out raDb. Separate fields with sep. Follow last field with lastSep. */
{
fprintf(f, "%u", *(el->id));
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->name);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->accessTable);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->shortLabel);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->longLabel);
if (sep == ',') fputc('"',f);
fputc(sep,f);
fprintf(f, "%u", *(el->expCount));
fputc(sep,f);
fprintf(f, "%u", *(el->height));
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->groupName);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->raFile);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->patDb);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
+fprintf(f, "%s", el->microscope);
+if (sep == ',') fputc('"',f);
+fputc(sep,f);
+if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->sampleField);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->patTable);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->patField);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->aliasTable);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->displayNameTable);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->dataType);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->platform);
if (sep == ',') fputc('"',f);
fputc(sep,f);
fprintf(f, "%g", *(el->expScale));
fputc(sep,f);
fprintf(f, "%g", *(el->gainFull));
fputc(sep,f);
fprintf(f, "%g", *(el->gainSet));
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->type);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->visibility);
if (sep == ',') fputc('"',f);
fputc(sep,f);
fprintf(f, "%g", *(el->priority));
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->url);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->security);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
-fprintf(f, "%s", el->local_url);
-if (sep == ',') fputc('"',f);
-fputc(sep,f);
-if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->profile);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->wrangler);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->citation);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->article_title);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->author_list);
if (sep == ',') fputc('"',f);
fputc(sep,f);
if (sep == ',') fputc('"',f);
fprintf(f, "%s", el->wrangling_procedure);
if (sep == ',') fputc('"',f);
fputc(lastSep,f);
}
void raDbJsonOutput(struct raDb *el, FILE *f)
/* Print out raDb in JSON format. */
{
fputc('{',f);
fputc('"',f);
fprintf(f,"id");
fputc('"',f);
fputc(':',f);
fprintf(f, "%u", *(el->id));
fputc(',',f);
fputc('"',f);
fprintf(f,"name");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->name);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"accessTable");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->accessTable);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"shortLabel");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->shortLabel);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"longLabel");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->longLabel);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"expCount");
fputc('"',f);
fputc(':',f);
fprintf(f, "%u", *(el->expCount));
fputc(',',f);
fputc('"',f);
fprintf(f,"height");
fputc('"',f);
fputc(':',f);
fprintf(f, "%u", *(el->height));
fputc(',',f);
fputc('"',f);
fprintf(f,"groupName");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->groupName);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"raFile");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->raFile);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"patDb");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->patDb);
fputc('"',f);
fputc(',',f);
fputc('"',f);
+fprintf(f,"microscope");
+fputc('"',f);
+fputc(':',f);
+fputc('"',f);
+fprintf(f, "%s", el->microscope);
+fputc('"',f);
+fputc(',',f);
+fputc('"',f);
fprintf(f,"sampleField");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->sampleField);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"patTable");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->patTable);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"patField");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->patField);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"aliasTable");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->aliasTable);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"displayNameTable");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->displayNameTable);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"dataType");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->dataType);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"platform");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->platform);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"expScale");
fputc('"',f);
fputc(':',f);
fprintf(f, "%g", *(el->expScale));
fputc(',',f);
fputc('"',f);
fprintf(f,"gainFull");
fputc('"',f);
fputc(':',f);
fprintf(f, "%g", *(el->gainFull));
fputc(',',f);
fputc('"',f);
fprintf(f,"gainSet");
fputc('"',f);
fputc(':',f);
fprintf(f, "%g", *(el->gainSet));
fputc(',',f);
fputc('"',f);
fprintf(f,"type");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->type);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"visibility");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->visibility);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"priority");
fputc('"',f);
fputc(':',f);
fprintf(f, "%g", *(el->priority));
fputc(',',f);
fputc('"',f);
fprintf(f,"url");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->url);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"security");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->security);
fputc('"',f);
fputc(',',f);
fputc('"',f);
-fprintf(f,"local_url");
-fputc('"',f);
-fputc(':',f);
-fputc('"',f);
-fprintf(f, "%s", el->local_url);
-fputc('"',f);
-fputc(',',f);
-fputc('"',f);
fprintf(f,"profile");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->profile);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"wrangler");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->wrangler);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"citation");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->citation);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"article_title");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->article_title);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"author_list");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->author_list);
fputc('"',f);
fputc(',',f);
fputc('"',f);
fprintf(f,"wrangling_procedure");
fputc('"',f);
fputc(':',f);
fputc('"',f);
fprintf(f, "%s", el->wrangling_procedure);
fputc('"',f);
fputc('}',f);
}
/* -------------------------------- End autoSql Generated Code -------------------------------- */