diff clustalomega/clustal-omega-0.2.0/src/squid/gki.h @ 0:ff1768533a07

Migrated tool version 0.2 from old tool shed archive to new tool shed repository
author clustalomega
date Tue, 07 Jun 2011 17:04:25 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clustalomega/clustal-omega-0.2.0/src/squid/gki.h	Tue Jun 07 17:04:25 2011 -0400
@@ -0,0 +1,50 @@
+/*****************************************************************
+ * SQUID - a library of functions for biological sequence analysis
+ * Copyright (C) 1992-2002 Washington University School of Medicine
+ * 
+ *     This source code is freely distributed under the terms of the
+ *     GNU General Public License. See the files COPYRIGHT and LICENSE
+ *     for details.
+ *****************************************************************/
+
+#ifndef SQUID_GKI_INCLUDED
+#define SQUID_GKI_INCLUDED
+
+/* gki.h
+ * SRE, Sat May  1 15:07:22 1999
+ * 
+ * Declarations of structures, functions for generic key index
+ * module: emulation of Perl hashes. See gki.c.
+ * 
+ * RCS $Id: gki.h 217 2011-03-19 10:27:10Z andreas $ (Original squid RCS Id: gki.h,v 1.2 1999/07/15 22:30:45 eddy Exp)
+ */
+
+/* gki_elem:
+ *    key, array index pairs are kept in linked list structures.
+ */
+struct gki_elem {
+  char            *key;
+  int              idx;
+  struct gki_elem *nxt;
+};
+
+/* gki:
+ *    a dynamically resized hash structure; 
+ *    contains a hash table and associated data
+ */
+typedef struct {
+  struct gki_elem **table;
+  
+  int primelevel;
+  int nhash;
+  int nkeys;
+} GKI;
+
+GKI *GKIInit(void);
+void GKIFree(GKI *hash);
+int  GKIHashValue(GKI *hash, char *key);
+int  GKIStoreKey(GKI *hash, char *key);
+int  GKIKeyIndex(GKI *hash, char *key);
+void GKIStatus(GKI *hash);
+
+#endif /* SQUID_GKI_INCLUDED */