Index: /trunk/ippScripts/scripts/register_imfile.pl
===================================================================
--- /trunk/ippScripts/scripts/register_imfile.pl	(revision 30638)
+++ /trunk/ippScripts/scripts/register_imfile.pl	(revision 30639)
@@ -199,4 +199,8 @@
     $command .= " -data_state full";
 }
+elsif (is_ccim($tmp_exp_name,$exp_type)) {
+    printf STDERR "This is a camera commanded detrend exposure that should not cause a burn.\n";
+    $command .= " -data_state full";
+}    
 else {
     printf STDERR "Need to check burntool.\n";
@@ -380,4 +384,20 @@
 }
 
+sub is_ccim 
+{
+    my $exp_name = shift;
+    my $exp_type = shift;
+ 
+    # needs to match regtool.c checks for "is_ccim".
+    if ($exp_name =~ /c/) {
+	if (($exp_type eq 'DOMEFLAT')||
+	    ($exp_type eq 'DARK')||
+	    ($exp_type eq 'BIAS')) {
+	    return(1);
+	}
+    }
+    return(0);
+}
+
 sub is_daytime
 {
Index: /trunk/ippTools/src/regtool.c
===================================================================
--- /trunk/ippTools/src/regtool.c	(revision 30638)
+++ /trunk/ippTools/src/regtool.c	(revision 30639)
@@ -259,4 +259,13 @@
       continue;
     }
+    char *is_ccim = strchr(psMetadataLookupStr(NULL,row,"exp_name"),'c');
+    if (is_ccim) { // Is a camera commanded exposure
+      //      fprintf(stderr,"IN camera commanded!\n");
+      if ((strcasecmp(psMetadataLookupStr(NULL,row,"exp_type"),"DOMEFLAT") == 0)||
+	  (strcasecmp(psMetadataLookupStr(NULL,row,"exp_type"),"DARK") == 0) ||
+	  (strcasecmp(psMetadataLookupStr(NULL,row,"exp_type"),"BIAS") == 0)) {
+	continue;
+      }
+    }
     
     if ((psMetadataLookupS32(NULL,row,"is_downloaded") != 1)||
@@ -367,4 +376,14 @@
     }
 
+    char *is_ccim = strchr(psMetadataLookupStr(NULL,row,"exp_name"),'c');
+    if (is_ccim) { // Is a camera commanded exposure
+      //      fprintf(stderr,"IN camera commanded!\n");
+      if ((strcasecmp(psMetadataLookupStr(NULL,row,"exp_type"),"DOMEFLAT") == 0)||
+	  (strcasecmp(psMetadataLookupStr(NULL,row,"exp_type"),"DARK") == 0) ||
+	  (strcasecmp(psMetadataLookupStr(NULL,row,"exp_type"),"BIAS") == 0)) {
+	continue;
+      }
+    }
+
     bool status = false;
     char *tmp_id = psMetadataLookupStr(&status,row,"summit_class_id");
@@ -389,4 +408,5 @@
     }
 
+    
     if (0 && !strcmp(this_class_id, "ota44")) {
         printf("STAT 1: %s (%d %d) %d %d %d\n",
