Index: /trunk/Ohana/src/imregister/imreg/args.imsearch.c
===================================================================
--- /trunk/Ohana/src/imregister/imreg/args.imsearch.c	(revision 63)
+++ /trunk/Ohana/src/imregister/imreg/args.imsearch.c	(revision 64)
@@ -189,4 +189,5 @@
     output.modify = TRUE;
     
+    /* modify part of the path */
     if (!strcasecmp (argv[N], "path")) {
       output.modify_path = TRUE;
@@ -199,4 +200,5 @@
     }
 
+    /* modify the image mode (MEF <-> SPLIT) */
     if (!strcasecmp (argv[N], "mode")) {
       remove_argument (N, &argc, argv);
@@ -213,4 +215,5 @@
     }
 
+    /* modify distributed status */
     if (!strcasecmp (argv[N], "dist")) {
       output.modify_dist = TRUE;
@@ -226,4 +229,29 @@
 	goto valid_modify;
       }
+    }
+
+    /* modify the type */
+    if (!strcasecmp (argv[N], "type")) {
+      output.modify_type = TRUE;
+      remove_argument (N, &argc, argv);
+      output.type == T_NONE;
+      for (i = 0; (i < NTYPE) && (output.type == T_NONE); i++) {
+	if (!strncasecmp (argv[N], typename[i], strlen(argv[N]))) output.type = i;
+      }
+      if (output.type == T_NONE) {
+	fprintf (stderr, "ERROR: invalid image type %s\n", argv[N]);
+	exit (1);
+      }
+      remove_argument (N, &argc, argv);
+      goto valid_modify;
+    }
+
+    /* modify the filter */
+    if (!strcasecmp (argv[N], "filter")) {
+      output.modify_filter = TRUE;
+      remove_argument (N, &argc, argv);
+      output.filter = strcreate (argv[N]);
+      remove_argument (N, &argc, argv);
+      goto valid_modify;
     }
 
@@ -232,5 +260,7 @@
       fprintf (stderr, "  -modify path (oldpath) (newpath)\n"); 
       fprintf (stderr, "  -modify mode (mef | split)\n"); 
-      fprintf (stderr, "  -modify dist (t | f)\n\n"); 
+      fprintf (stderr, "  -modify dist (t | f)\n"); 
+      fprintf (stderr, "  -modify type (flat, etc)\n"); 
+      fprintf (stderr, "  -modify filter (name)\n\n"); 
       fprintf (stderr, "  mode mef : convert mef to split\n");
       fprintf (stderr, "  mode split : convert split to mef\n");
