src/hg/makeDb/hgCutters/hgCutters.c 1.2

1.2 2009/02/10 01:09:30 aamp
Compile-error fix. Library code changed years ago and this one didn't get updated then for some reason.
Index: src/hg/makeDb/hgCutters/hgCutters.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/makeDb/hgCutters/hgCutters.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -b -B -U 1000000 -r1.1 -r1.2
--- src/hg/makeDb/hgCutters/hgCutters.c	22 Mar 2005 01:09:20 -0000	1.1
+++ src/hg/makeDb/hgCutters/hgCutters.c	10 Feb 2009 01:09:30 -0000	1.2
@@ -1,119 +1,119 @@
 /* Load up a GCG file. */
 
 #include "common.h"
 #include "dystring.h"
 #include "hash.h"
 #include "dnaseq.h"
 #include "dnautil.h"
 #include "dnaLoad.h"
 #include "options.h"
 #include "linefile.h"
 #include "bed.h"
 #include "cutter.h"
 
 char *tableName = "cutters";
 struct slName *includes = NULL;
 struct slName *excludes = NULL;
 
 static struct optionSpec options[] = {
     {"tableName", OPTION_STRING},
     {"overrides", OPTION_STRING},
     {"justPrimary", OPTION_BOOLEAN},
     {"createOnly", OPTION_BOOLEAN},
     {NULL, 0}
 };
 
 void usage() 
 {
 errAbort("hgCutters - Load REBASE restriction enzymes GCG file into database.\n"
 	 "usage:\n"
 	 "   hgCutters [options] database file.gcg\n"
 	 "options:\n"
 	 "    -createOnly      Just make the table without any rows.\n"
 	 "    -justPrimary     Just use the ones without semicolons in front (the primary ones).\n"
 	 "    -overrides=file  Include a file listing overrides to the set behavior.  The file\n"
 	 "                      is formatted like:\n"
 	 "                         include enzyme\n"
 	 "                         exclude enzyme\n"
 	 "                      etc.\n"
 	 "    -tableName=name  Choose a different name for the loaded table.  Default is \"cutters\".");
 }
 
 void cutterTableCreate(struct sqlConnection *conn)
 /* Create a table. */
 {
 static char *createString = 
     "CREATE TABLE %s (\n"
     "    name varchar(255) not null,	# Name of Enzyme\n"
     "    size int unsigned not null,	# Size of recognition sequence\n"
     "    matchSize int unsigned not null,	# size without Ns\n"
     "    seq varchar(255) not null,	# Recognition sequence\n"
     "    cut int unsigned not null,	# Cut site on the plus strand\n"
     "    overhang int not null,	# Overhang\n"
     "    palindromic tinyint unsigned not null,	# 1 if it's panlidromic, 0 if not.\n"
     "    semicolon tinyint unsigned not null,	# 1 if it's from a REBASE record that has a semicolon in front, 0 if not.\n"
     "    numSciz int unsigned not null,	# Number of isoscizomers\n"
     "    scizs longblob not null,	# Names of isosizomers\n"
     "    numCompanies int unsigned not null,	# Number of companies selling this enzyme\n"
     "    companies longblob not null,	# Company letters\n"
     "    numRefs int unsigned not null,	# Number of references\n"
     "    refs longblob not null	# Reference numbers\n"
     ")\n";
 struct dyString *dy = newDyString(1024);
 dyStringPrintf(dy, createString, tableName);
 sqlRemakeTable(conn, tableName, dy->string);
 dyStringFree(&dy);
 }
 
 void loadOverrides(char *overrides)
 /* Load overrides from file into the two global slName lists. */
 {
 struct lineFile *lf = lineFileOpen(overrides,TRUE);
 char *words[2];
 
 while (lineFileChop(lf,words))
     {
     if (sameWord(words[0],"include"))
 	slNameStore(&includes, words[1]);
     else if (sameWord(words[0],"exclude"))
 	slNameStore(&excludes, words[1]);
     else
 	errAbort("There's a problem with the overrides file.");
     }
 }
 
 void hgLoadCutters(char *database, struct cutter *cutters)
 /* Load table into database. */
 {
 struct cutter *one;
 struct sqlConnection *conn = sqlConnect(database);
 cutterTableCreate(conn);
 
 if (!optionExists("createOnly"))
     for (one = cutters; one != NULL; one = one->next)
     {
     cutterSaveToDb(conn, one, tableName, 1024);
     }
 sqlDisconnect(&conn);
 }
 
 int main(int argc, char *argv[])
 /* The program */
 {
 struct cutter *cutters = NULL;
 char *overrides = NULL;
 
 optionInit(&argc, argv, options);
 if (argc != 3) 
     usage();
 cutters = readGcg(argv[2]);
 overrides = optionVal("overrides", NULL);
 if (overrides)
     loadOverrides(overrides);
-cullCutters(cutters, !optionExists("justPrimary"), includes, excludes, 0);
+cullCutters(&cutters, !optionExists("justPrimary"), includes, 0);
 hgLoadCutters(argv[1], cutters);
 cutterFreeList(&cutters);
 slFreeList(&includes);
 slFreeList(&excludes);
 return 0;
 }