Index: trunk/Ohana/src/opihi/dvo/LoadImages.c
===================================================================
--- trunk/Ohana/src/opihi/dvo/LoadImages.c	(revision 4852)
+++ trunk/Ohana/src/opihi/dvo/LoadImages.c	(revision 4854)
@@ -4,45 +4,19 @@
 
   char filename[256];
-  int Nimage, NIMAGE;
-  FILE *f;
-  Header header;
   Image *image;
+  FITS_DB db;
   
   VarConfig ("IMAGE_CATALOG", "%s", filename);
 
-  *nimage = 0;
-  NIMAGE = 0;
-  Nimage = 0;
-  image  = NULL;
-
-  /* check if image datafile exists, get header */
-  if (!fits_read_header (filename, &header)) {
+  fits_db_init (&db);
+  if (!fits_db_lock (&db, filename)) {
     fprintf (stderr, "No available image catalog %s (1)\n", filename);
     return (NULL);
   }
 
-  fits_scan (&header, "NIMAGES", "%d", 1, &NIMAGE);
-  if (NIMAGE == 0) {
-    fprintf (stderr, "no images found\n");
-    return (NULL);
-  }
+  dvo_image_load (&db, TRUE);
+  fits_db_close (&db);
 
-  /* get ready to read data on images */ 
-  f = fopen (filename, "r");
-  if (f == (FILE *) NULL) {
-    fprintf (stderr, "No available image catalog: %s (2)\n", filename);
-    free (header.buffer);
-    return (NULL);
-  }
-
-  ALLOCATE (image, Image, NIMAGE);
-  fseek (f, header.size, SEEK_SET); 
-  Nimage = Fread (image, sizeof(Image), NIMAGE, f, "image");
-  if (Nimage != NIMAGE) {
-    fprintf (stderr, "failed to read in all images (%d of %d)\n", Nimage, NIMAGE);
-  }
-
-  fclose (f);
-  *nimage = Nimage;
+  image = fits_table_get_Image (&db.ftable, nimage);
   return (image);
 }
