Add a deque, implemented as a circular queue, to libpspp.
[pspp-builds.git] / src / output / output.c
index a63f1171a446e0a42fb5c1f691a8adada0078f68..368b37b050703fabd9c47281d721548e14b506e4 100644 (file)
@@ -1,6 +1,5 @@
 /* PSPP - computes sample statistics.
    Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
-   Written by Ben Pfaff <blp@gnu.org>.
 
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
@@ -70,12 +69,12 @@ static struct outp_names *outp_configure_vec;
 /* A list of driver classes. */
 struct outp_driver_class_list
   {
-    struct outp_class *class;
+    const struct outp_class *class;
     struct outp_driver_class_list *next;
   };
 
-struct outp_driver_class_list *outp_class_list;
-struct outp_driver *outp_driver_list;
+static struct outp_driver_class_list *outp_class_list;
+static struct outp_driver *outp_driver_list;
 
 char *outp_title;
 char *outp_subtitle;
@@ -91,7 +90,7 @@ static void configure_driver (const struct substring, const struct substring,
 
 /* Add a class to the class list. */
 static void
-add_class (struct outp_class *class)
+add_class (const struct outp_class *class)
 {
   struct outp_driver_class_list *new_list = xmalloc (sizeof *new_list);
 
@@ -227,7 +226,6 @@ outp_init (void)
 {
   extern struct outp_class ascii_class;
   extern struct outp_class postscript_class;
-  extern struct outp_class html_class;
 
   char def[] = "default";
 
@@ -279,9 +277,8 @@ outp_read_devices (void)
   init_fn = fn_search_path (fn_getenv_default ("STAT_OUTPUT_INIT_FILE",
                                               "devices"),
                            fn_getenv_default ("STAT_OUTPUT_INIT_PATH",
-                                              config_path),
-                           NULL);
-
+                                              config_path));
+  
   ds_init_empty (&line);
 
   if (init_fn == NULL)
@@ -797,7 +794,7 @@ destroy_driver (struct outp_driver *d)
    code and stores subcategory in *SUBCAT on success.  Returns -1
    on failure. */
 int
-outp_match_keyword (const char *s, struct outp_option *tab, int *subcat)
+outp_match_keyword (const char *s, const struct outp_option *tab, int *subcat)
 {
   for (; tab->keyword != NULL; tab++)
     if (!strcmp (s, tab->keyword))
@@ -1012,9 +1009,8 @@ outp_get_paper_size (char *size, int *h, int *v)
   pprsz_fn = fn_search_path (fn_getenv_default ("STAT_OUTPUT_PAPERSIZE_FILE",
                                                "papersize"),
                             fn_getenv_default ("STAT_OUTPUT_INIT_PATH",
-                                               config_path),
-                            NULL);
-
+                                               config_path));
+  
   ds_init_empty (&line);
 
   if (pprsz_fn == NULL)