Index: trunk/Ohana/src/delstar/include/delstar.h
===================================================================
--- trunk/Ohana/src/delstar/include/delstar.h	(revision 39926)
+++ trunk/Ohana/src/delstar/include/delstar.h	(revision 40291)
@@ -96,4 +96,5 @@
 int   SKIP_IMAGES;
 char *BACKUP_EXTNAME;
+char *DELLIST_FILENAME;
 
 time_t    START;
@@ -105,5 +106,5 @@
 
 int    MODE;
-enum {MODE_NONE, MODE_IMAGENAME, MODE_IMAGEFILE, MODE_TIME, MODE_ORPHAN, MODE_MISSED, MODE_PHOTCODES, MODE_DUP_IMAGES, MODE_DUP_MEASURES, MODE_DELETE_MEASURES_BY_MATCH, MODE_FIX_LAP, MODE_FIX_LAP_STATS, MODE_FIX_LAP_EDGES, MODE_FIX_LAP_EDGES_DELETE};
+enum {MODE_NONE, MODE_IMAGENAME, MODE_IMAGEFILE, MODE_TIME, MODE_ORPHAN, MODE_MISSED, MODE_PHOTCODES, MODE_DUP_IMAGES, MODE_DUP_MEASURES, MODE_DELETE_MEASURES_BY_MATCH, MODE_DELETE_MEASURES_BY_DETID, MODE_FIX_LAP, MODE_FIX_LAP_STATS, MODE_FIX_LAP_EDGES, MODE_FIX_LAP_EDGES_DELETE};
 
 char DateKeyword[64], DateMode[64], UTKeyword[64], MJDKeyword[64], JDKeyword[64];
@@ -230,2 +231,19 @@
 int delete_fix_LAP_edges_drop_measures (Catalog *catalog, MeasureEdge *measure_edge, off_t Nmeasure_edge, int catIDcount);
 int delete_fix_LAP_edges_delete_parallel (SkyList *sky);
+
+typedef struct {
+  int  catID;
+  int *objID;
+  int *detID;
+  int *imageID;
+  int NdetID;
+} CatIDGroup;
+
+int dvo_catalog_subset_backup (Catalog *catalog, char *suffix);
+void isortthree (int *X, int *Y, int *Z, int N);
+int thisCatID (int *catID, int NcatID, int index);
+int needCatID (int *catID, int NcatID, int index);
+int delete_measures_by_detID_catalog (Catalog *catalog, CatIDGroup *catIDgroup);
+int delete_measures_by_detID_parallel (SkyList *sky);
+int delete_measures_by_detID ();
+
