Index: /branches/eam_branch_00/ippTasks/detrend.norm.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/detrend.norm.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/detrend.norm.pro	(revision 11109)
@@ -1,3 +1,4 @@
 ## this file contains the tasks for running the detrend normalization stages
+## these tasks use the books detPendingNormStatImfile detPendingNormImfile detPendingNormExp
 
 if ($?network == 0)
@@ -19,16 +20,16 @@
 exec mkdir -p $LOGSUBDIR
 
-book init DetrendNormStat
-book init DetrendNorm
-book init DetrendNormExp
+book init detPendingNormStatImfile
+book init detPendingNormImfile
+book init detPendingNormExp
 
 macro detnorm.status
-  book listbook DetrendNormStat
-  book listbook DetrendNorm
-  book listbook DetrendNormExp
+  book listbook detPendingNormStatImfile
+  book listbook detPendingNormImfile
+  book listbook detPendingNormExp
 end
 
 # select images ready for copy 
-# new entries are added to DetrendNormStat
+# new entries are added to detPendingNormStatImfile
 # compare the new list with the ones already selected
 task	       dettool.normstat.load
@@ -39,5 +40,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/dettool.normstat.log
+  stdout NULL
   stderr $LOGSUBDIR/dettool.normstat.log
 
@@ -49,11 +50,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendNormStat -key det_id:iteration -uniq
+    ipptool2book stdout detPendingNormStatImfile -key det_id:iteration -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendNormStat
+      book listbook detPendingNormStatImfile
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendNormStat -key state DONE
+    book delpage detPendingNormStatImfile -key state DONE
   end
 
@@ -76,17 +77,17 @@
 
   task.exec
-    book npages DetrendNormStat -var N
+    book npages detPendingNormStatImfile -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendNormStat
-    book getpage DetrendNormStat 0 -var pageName -key state NULL
+    # look for new images in detPendingNormStatImfile
+    book getpage detPendingNormStatImfile 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendNormStat $pageName state RUN
-    book getword DetrendNormStat $pageName det_id    -var DET_ID
-    book getword DetrendNormStat $pageName det_type  -var DET_TYPE
-    book getword DetrendNormStat $pageName iteration -var ITERATION
-    book getword DetrendNormStat $pageName camera    -var CAMERA  
+    book setword detPendingNormStatImfile $pageName state RUN
+    book getword detPendingNormStatImfile $pageName det_id    -var DET_ID
+    book getword detPendingNormStatImfile $pageName det_type  -var DET_TYPE
+    book getword detPendingNormStatImfile $pageName iteration -var ITERATION
+    book getword detPendingNormStatImfile $pageName camera    -var CAMERA  
 
     # specify choice of remote host:
@@ -98,4 +99,5 @@
 
     # XXX add $WORKDIR/$LOG_DIR
+    # XXX use ipp_filename.pl to lookup output file names
     stdout $LOGSUBDIR/$CAMERA.$DET_TYPE.$DET_ID.$ITERATION.log
     stderr $LOGSUBDIR/$CAMERA.$DET_TYPE.$DET_ID.$ITERATIION.log
@@ -111,24 +113,18 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendNormStat $options:0 state DONE
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-    book setword DetrendNormStat $options:0 state FAIL
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-    book setword DetrendNormStat $options:0 state TIMEOUT
+  # default exit status
+  task.exit    default
+    process_exit detPendingNormStatImfile $options:0 $JOB_STATUS
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+    book setword detPendingNormStatImfile $options:0 state TIMEOUT
   end
 end
 
 # select images ready for copy 
-# new entries are added to DetrendNorm
+# new entries are added to detPendingNormImfile
 # compare the new list with the ones already selected
 task	       dettool.norm.load
@@ -139,5 +135,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/dettool.norm.log
+  stdout NULL
   stderr $LOGSUBDIR/dettool.norm.log
 
@@ -149,11 +145,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendNorm -key det_id:iteration -uniq
+    ipptool2book stdout detPendingNormImfile -key det_id:iteration -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendNorm
+      book listbook detPendingNormImfile
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendNorm -key state DONE
+    book delpage detPendingNormImfile -key state DONE
   end
 
@@ -176,20 +172,20 @@
 
   task.exec
-    book npages DetrendNorm -var N
+    book npages detPendingNormImfile -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendNorm
-    book getpage DetrendNorm 0 -var pageName -key state NULL
+    # look for new images in detPendingNormImfile
+    book getpage detPendingNormImfile 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendNorm $pageName state RUN
-    book getword DetrendNorm $pageName det_type  -var DET_TYPE 
-    book getword DetrendNorm $pageName camera    -var CAMERA   
-    book getword DetrendNorm $pageName uri       -var URI      
-    book getword DetrendNorm $pageName det_id    -var DET_ID   
-    book getword DetrendNorm $pageName iteration -var ITERATION     
-    book getword DetrendNorm $pageName class_id  -var CLASS_ID 
-    book getword DetrendNorm $pageName norm      -var NORM     
+    book setword detPendingNormImfile $pageName state RUN
+    book getword detPendingNormImfile $pageName det_type  -var DET_TYPE 
+    book getword detPendingNormImfile $pageName camera    -var CAMERA   
+    book getword detPendingNormImfile $pageName uri       -var URI      
+    book getword detPendingNormImfile $pageName det_id    -var DET_ID   
+    book getword detPendingNormImfile $pageName iteration -var ITERATION     
+    book getword detPendingNormImfile $pageName class_id  -var CLASS_ID 
+    book getword detPendingNormImfile $pageName norm      -var NORM     
 
     # specify choice of remote host:
@@ -200,4 +196,5 @@
     end
 
+    # XXX use ipp_filename.pl to lookup output file names
     stdout $LOGSUBDIR/$CAMERA.$DET_TYPE.$DET_ID.$ITERATION.log
     stderr $LOGSUBDIR/$CAMERA.$DET_TYPE.$DET_ID.$ITERATION.log
@@ -213,24 +210,18 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendNorm $options:0 state DONE
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-    book setword DetrendNorm $options:0 state FAIL
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-    book setword DetrendNorm $options:0 state TIMEOUT
+  # default exit status
+  task.exit    default
+    process_exit detPendingNormImfile $options:0 state FAIL
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+    book setword detPendingNormImfile $options:0 state TIMEOUT
   end
 end
 
 # select images ready for copy 
-# new entries are added to DetrendNormExp
+# new entries are added to detPendingNormExp
 # compare the new list with the ones already selected
 task	       dettool.normexp.load
@@ -241,5 +232,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/dettool.normexp.log
+  stdout NULL
   stderr $LOGSUBDIR/dettool.normexp.log
 
@@ -251,11 +242,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendNormExp -key det_id:iteration -uniq
+    ipptool2book stdout detPendingNormExp -key det_id:iteration -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendNormExp
+      book listbook detPendingNormExp
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendNormExp -key state DONE
+    book delpage detPendingNormExp -key state DONE
   end
 
@@ -278,17 +269,17 @@
 
   task.exec
-    book npages DetrendNormExp -var N
+    book npages detPendingNormExp -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendNormExp
-    book getpage DetrendNormExp 0 -var pageName -key state NULL
+    # look for new images in detPendingNormExp
+    book getpage detPendingNormExp 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendNormExp $pageName state RUN
-    book getword DetrendNormExp $pageName det_id    -var DET_ID  
-    book getword DetrendNormExp $pageName iteration -var ITERATION    
-    book getword DetrendNormExp $pageName det_type  -var DET_TYPE
-    book getword DetrendNormExp $pageName camera    -var CAMERA  
+    book setword detPendingNormExp $pageName state RUN
+    book getword detPendingNormExp $pageName det_id    -var DET_ID  
+    book getword detPendingNormExp $pageName iteration -var ITERATION    
+    book getword detPendingNormExp $pageName det_type  -var DET_TYPE
+    book getword detPendingNormExp $pageName camera    -var CAMERA  
 
     # specify choice of remote host:
@@ -313,19 +304,13 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendNormExp $options:0 state DONE
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-    book setword DetrendNormExp $options:0 state FAIL
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-    book setword DetrendNormExp $options:0 state TIMEOUT
-  end
-end
+  # default exit status
+  task.exit    default
+    process_exit detPendingNormExp $options:0 $JOB_STATUS
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+    book setword detPendingNormExp $options:0 state TIMEOUT
+  end
+end
Index: /branches/eam_branch_00/ippTasks/detrend.process.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/detrend.process.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/detrend.process.pro	(revision 11109)
@@ -1,4 +1,4 @@
 ## this file contains the tasks for running the detrend processing stage
-## these tasks use the books DetrendProcessImfiles and DetrendProcessExposures
+## these tasks use the books detPendingProcessedImfile and detPendingProcessedExp
 
 if ($?network == 0)
@@ -20,14 +20,14 @@
 exec mkdir -p $LOGSUBDIR
 
-book init DetrendProcessImfiles
-book init DetrendProcessExposures
+book init detPendingProcessedImfile
+book init detPendingProcessedExp
 
 macro detproc.status
-  book listbook DetrendProcessImfiles
-  book listbook DetrendProcessExposures
+  book listbook detPendingProcessedImfile
+  book listbook detPendingProcessedExp
 end
 
 # select images ready for copy 
-# new entries are added to DetrendProcessImfiles
+# new entries are added to detPendingProcessedImfile
 # compare the new list with the ones already selected
 task	       dettool.process.load
@@ -38,5 +38,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/detproc.imfile.log
+  stdout NULL
   stderr $LOGSUBDIR/detproc.imfile.log
 
@@ -48,11 +48,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendProcessImfiles -key det_id:exp_tag:class_id -uniq
+    ipptool2book stdout detPendingProcessedImfile -key det_id:exp_tag:class_id -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendProcessImfiles
+      book listbook detPendingProcessedImfile
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendProcessImfiles -key state DONE
+    book delpage detPendingProcessedImfile -key state DONE
   end
 
@@ -75,20 +75,20 @@
 
   task.exec
-    book npages DetrendProcessImfiles -var N
+    book npages detPendingProcessedImfile -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendProcessImfiles
-    book getpage DetrendProcessImfiles 0 -var pageName -key state NULL
+    # look for new images in detPendingProcessedImfile
+    book getpage detPendingProcessedImfile 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendProcessImfiles $pageName state RUN
-    book getword DetrendProcessImfiles $pageName det_id   -var DET_ID   
-    book getword DetrendProcessImfiles $pageName det_type -var DET_TYPE 
-    book getword DetrendProcessImfiles $pageName exp_tag  -var EXP_TAG  
-    book getword DetrendProcessImfiles $pageName class    -var CLASS    
-    book getword DetrendProcessImfiles $pageName class_id -var CLASS_ID 
-    book getword DetrendProcessImfiles $pageName uri      -var URI      
-    book getword DetrendProcessImfiles $pageName camera   -var CAMERA   
+    book setword detPendingProcessedImfile $pageName state RUN
+    book getword detPendingProcessedImfile $pageName det_id   -var DET_ID   
+    book getword detPendingProcessedImfile $pageName det_type -var DET_TYPE 
+    book getword detPendingProcessedImfile $pageName exp_tag  -var EXP_TAG  
+    book getword detPendingProcessedImfile $pageName class    -var CLASS    
+    book getword detPendingProcessedImfile $pageName class_id -var CLASS_ID 
+    book getword detPendingProcessedImfile $pageName uri      -var URI      
+    book getword detPendingProcessedImfile $pageName camera   -var CAMERA   
 
     # specify choice of remote host:
@@ -99,4 +99,7 @@
     end
 
+    ## generate output log based on filerule
+    ## XXX use OUTPATH from db to set output path
+    ## XXX use ipp_filename.pl DETPROC.LOG $outroot $CLASS_ID`
     $word = `basename $EXP_TAG | tr '.' ' '`
     list word -split $word
@@ -116,13 +119,7 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendProcessImfiles $options:0 state DONE
-  end
-
   # default exit status
   task.exit    default
-    showcommand failure
-    book setword DetrendProcessImfiles $options:0 state FAIL
+    process_exit detPendingProcessedImfile $options:0 $JOB_STATUS
   end
 
@@ -130,10 +127,10 @@
   task.exit    timeout
     showcommand timeout
-    book setword DetrendProcessImfiles $options:0 state TIMEOUT
+    book setword detPendingProcessedImfile $options:0 state TIMEOUT
  end
 end
 
 # select images ready for copy 
-# new entries are added to DetrendProcessExposures
+# new entries are added to detPendingProcessedExp
 # compare the new list with the ones already selected
 task	       dettool.processexp.load
@@ -144,5 +141,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/detproc.exp.log
+  stdout NULL
   stderr $LOGSUBDIR/detproc.exp.log
 
@@ -154,11 +151,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendProcessExposures -key det_id:iteration:exp_tag -uniq
+    ipptool2book stdout detPendingProcessedExp -key det_id:iteration:exp_tag -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendProcessExposures
+      book listbook detPendingProcessedExp
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendProcessExposures -key state DONE
+    book delpage detPendingProcessedExp -key state DONE
   end
 
@@ -181,18 +178,18 @@
 
   task.exec
-    book npages DetrendProcessExposures -var N
+    book npages detPendingProcessedExp -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new exposures in DetrendProcessExposures
-    book getpage DetrendProcessExposures 0 -var pageName -key state NULL
+    # look for new exposures in detPendingProcessedExp
+    book getpage detPendingProcessedExp 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendProcessExposures $pageName state RUN
-    book getword DetrendProcessExposures $pageName det_id    -var DET_ID
-    book getword DetrendProcessExposures $pageName iteration -var ITERATION
-    book getword DetrendProcessExposures $pageName det_type  -var DET_TYPE
-    book getword DetrendProcessExposures $pageName exp_tag   -var EXP_TAG
-    book getword DetrendProcessExposures $pageName camera    -var CAMERA  
+    book setword detPendingProcessedExp $pageName state RUN
+    book getword detPendingProcessedExp $pageName det_id    -var DET_ID
+    book getword detPendingProcessedExp $pageName iteration -var ITERATION
+    book getword detPendingProcessedExp $pageName det_type  -var DET_TYPE
+    book getword detPendingProcessedExp $pageName exp_tag   -var EXP_TAG
+    book getword detPendingProcessedExp $pageName camera    -var CAMERA  
 
     # specify choice of remote host:
@@ -222,12 +219,6 @@
 
   # success
-  task.exit 0
-    book setword DetrendProcessExposures $options:0 state DONE
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-    book setword DetrendProcessExposures $options:0 state FAIL
+  task.exit    default
+    process_exit detPendingProcessedExp $options:0 $JOB_STATUS
   end
 
@@ -235,5 +226,5 @@
   task.exit    timeout
     showcommand timeout
-    book setword DetrendProcessExposures $options:0 state TIMEOUT
-  end
-end
+    book setword detPendingProcessedExp $options:0 state TIMEOUT
+  end
+end
Index: /branches/eam_branch_00/ippTasks/detrend.reject.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/detrend.reject.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/detrend.reject.pro	(revision 11109)
@@ -1,3 +1,4 @@
 ## this file contains the tasks for running the detrend processing stage
+## these tasks use the book detRejectExp
 
 if ($?network == 0)
@@ -19,12 +20,12 @@
 exec mkdir -p $LOGSUBDIR
 
-book init DetrendRejectExp
+book init detRejectExp
 
 macro detreject.status
-  book listbook DetrendRejectExp
+  book listbook detRejectExp
 end
 
 # select images ready for copy 
-# new entries are added to DetrendRejectExp
+# new entries are added to detRejectExp
 # compare the new list with the ones already selected
 task	       dettool.reject.load
@@ -35,5 +36,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/dettool.reject.log
+  stdout NULL
   stderr $LOGSUBDIR/dettool.reject.log
 
@@ -45,11 +46,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendRejectExp -key det_id:iteration -uniq
+    ipptool2book stdout detRejectExp -key det_id:iteration -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendRejectExp
+      book listbook detRejectExp
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendRejectExp -key state DONE
+    book delpage detRejectExp -key state DONE
   end
 
@@ -72,18 +73,18 @@
 
   task.exec
-    book npages DetrendRejectExp -var N
+    book npages detRejectExp -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendRejectExp
-    book getpage DetrendRejectExp 0 -var pageName -key state NULL
+    # look for new images in detRejectExp
+    book getpage detRejectExp 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendRejectExp $pageName state RUN
-    book getword DetrendRejectExp $pageName det_id    -var DET_ID   
-    book getword DetrendRejectExp $pageName iteration -var ITERATION     
-    book getword DetrendRejectExp $pageName det_type  -var DET_TYPE 
-    book getword DetrendRejectExp $pageName mode      -var MODE     
-    book getword DetrendRejectExp $pageName camera    -var CAMERA   
+    book setword detRejectExp $pageName state RUN
+    book getword detRejectExp $pageName det_id    -var DET_ID   
+    book getword detRejectExp $pageName iteration -var ITERATION     
+    book getword detRejectExp $pageName det_type  -var DET_TYPE 
+    book getword detRejectExp $pageName mode      -var MODE     
+    book getword detRejectExp $pageName camera    -var CAMERA   
 
     # specify choice of remote host:
@@ -108,13 +109,7 @@
  end
 
-  # success
-  task.exit 0
-    book setword DetrendRejectExp $options:0 state DONE
-  end
-
   # default exit status
   task.exit    default
-    showcommand failure
-    book setword DetrendRejectExp $options:0 state FAIL
+    process_exit detRejectExp $options:0 state FAIL
   end
 
@@ -122,5 +117,5 @@
   task.exit    timeout
     showcommand failure
-    book setword DetrendRejectExp $options:0 state TIMEOUT
+    book setword detRejectExp $options:0 state TIMEOUT
   end
 end
Index: /branches/eam_branch_00/ippTasks/detrend.resid.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/detrend.resid.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/detrend.resid.pro	(revision 11109)
@@ -1,3 +1,4 @@
 ## this file contains the tasks for running the detrend processing stage
+## these tasks use the books detPendingResidImfile and detPendingResidExp
 
 if ($?network == 0)
@@ -19,14 +20,14 @@
 exec mkdir -p $LOGSUBDIR
 
-book init DetrendResidImfiles
-book init DetrendResidExposures
+book init detPendingResidImfile
+book init detPendingResidExp
 
 macro detresid.status
-  book listbook DetrendResidImfiles
-  book listbook DetrendResidExposures
+  book listbook detPendingResidImfile
+  book listbook detPendingResidExp
 end
 
 # select images ready for copy 
-# new entries are added to DetrendResidImfiles
+# new entries are added to detPendingResidImfile
 # compare the new list with the ones already selected
 task	       dettool.resid.load
@@ -37,5 +38,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/detresid.log
+  stdout NULL
   stderr $LOGSUBDIR/detresid.log
 
@@ -47,11 +48,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendResidImfiles -key det_id:iteration:exp_tag:class_id -uniq
+    ipptool2book stdout detPendingResidImfile -key det_id:iteration:exp_tag:class_id -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendResidImfiles
+      book listbook detPendingResidImfile
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendResidImfiles -key state DONE
+    book delpage detPendingResidImfile -key state DONE
   end
 
@@ -74,22 +75,22 @@
 
   task.exec
-    book npages DetrendResidImfiles -var N
+    book npages detPendingResidImfile -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendResidImfiles
-    book getpage DetrendResidImfiles 0 -var pageName -key state NULL
+    # look for new images in detPendingResidImfile
+    book getpage detPendingResidImfile 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendResidImfiles $pageName state RUN
-    book getword DetrendResidImfiles $pageName det_id    -var DET_ID   
-    book getword DetrendResidImfiles $pageName iteration -var ITERATION     
-    book getword DetrendResidImfiles $pageName det_type  -var DET_TYPE 
-    book getword DetrendResidImfiles $pageName mode      -var MODE     
-    book getword DetrendResidImfiles $pageName exp_tag   -var EXP_TAG  
-    book getword DetrendResidImfiles $pageName class_id  -var CLASS_ID 
-    book getword DetrendResidImfiles $pageName uri       -var URI      
-    book getword DetrendResidImfiles $pageName det_uri   -var DET_URI  
-    book getword DetrendResidImfiles $pageName camera    -var CAMERA   
+    book setword detPendingResidImfile $pageName state RUN
+    book getword detPendingResidImfile $pageName det_id    -var DET_ID   
+    book getword detPendingResidImfile $pageName iteration -var ITERATION     
+    book getword detPendingResidImfile $pageName det_type  -var DET_TYPE 
+    book getword detPendingResidImfile $pageName mode      -var MODE     
+    book getword detPendingResidImfile $pageName exp_tag   -var EXP_TAG  
+    book getword detPendingResidImfile $pageName class_id  -var CLASS_ID 
+    book getword detPendingResidImfile $pageName uri       -var URI      
+    book getword detPendingResidImfile $pageName det_uri   -var DET_URI  
+    book getword detPendingResidImfile $pageName camera    -var CAMERA   
 
     # specify choice of remote host:
@@ -100,4 +101,5 @@
     end
 
+    # XXX use ipp_filename.pl to lookup output file names
     $word = `basename $EXP_TAG | tr '.' ' '`
     list word -split $word
@@ -117,24 +119,18 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendResidImfiles $options:0 state DONE
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-    book setword DetrendResidImfiles $options:0 state FAIL
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-    book setword DetrendResidImfiles $options:0 state TIMEOUT
+  # default exit status
+  task.exit    default
+    process_exit detPendingResidImfile $options:0 $JOB_STATUS
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+    book setword detPendingResidImfile $options:0 state TIMEOUT
   end
 end
 
 # select images ready for copy 
-# new entries are added to DetrendResidExposures
+# new entries are added to detPendingResidExp
 # compare the new list with the ones already selected
 task	       dettool.residexp.load
@@ -145,5 +141,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/detresid.exp.log
+  stdout NULL
   stderr $LOGSUBDIR/detresid.exp.log
 
@@ -155,11 +151,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendResidExposures -key det_id:iteration:exp_tag -uniq
+    ipptool2book stdout detPendingResidExp -key det_id:iteration:exp_tag -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendResidExposures
+      book listbook detPendingResidExp
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendResidExposures -key state DONE
+    book delpage detPendingResidExp -key state DONE
   end
 
@@ -182,20 +178,20 @@
 
   task.exec
-    book npages DetrendResidExposures -var N
+    book npages detPendingResidExp -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendResidExposures
-    book getpage DetrendResidExposures 0 -var pageName -key state NULL
+    # look for new images in detPendingResidExp
+    book getpage detPendingResidExp 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendResidExposures $pageName state RUN
-    book getword DetrendResidExposures $pageName det_id    -var DET_ID  
-    book getword DetrendResidExposures $pageName iteration -var ITERATION    
-    book getword DetrendResidExposures $pageName det_type  -var DET_TYPE
-    book getword DetrendResidExposures $pageName mode      -var MODE    
-    book getword DetrendResidExposures $pageName exp_tag   -var EXP_TAG 
-    book getword DetrendResidExposures $pageName include   -var INCLUDE 
-    book getword DetrendResidExposures $pageName camera    -var CAMERA  
+    book setword detPendingResidExp $pageName state RUN
+    book getword detPendingResidExp $pageName det_id    -var DET_ID  
+    book getword detPendingResidExp $pageName iteration -var ITERATION    
+    book getword detPendingResidExp $pageName det_type  -var DET_TYPE
+    book getword detPendingResidExp $pageName mode      -var MODE    
+    book getword detPendingResidExp $pageName exp_tag   -var EXP_TAG 
+    book getword detPendingResidExp $pageName include   -var INCLUDE 
+    book getword detPendingResidExp $pageName camera    -var CAMERA  
 
     # specify choice of remote host:
@@ -206,5 +202,5 @@
     end
 
-    # XXX this is still a lame rule
+    # XXX use ipp_filename.pl to lookup output file names
     $word = `basename $EXP_TAG | tr '.' ' '`
     list word -split $word
@@ -224,19 +220,13 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendResidExposures $options:0 state DONE
-  end
-
-  # default exit status
-  task.exit    default
-    showcommand failure
-    book setword DetrendResidExposures $options:0 state FAIL
-  end
-
-  # operation times out?
-  task.exit    timeout
-    showcommand timeout
-    book setword DetrendResidExposures $options:0 state TIMEOUT
-  end
-end
+  # default exit status
+  task.exit    default
+    process_exit detPendingResidExp $options:0 $JOB_STATUS
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+    book setword detPendingResidExp $options:0 state TIMEOUT
+  end
+end
Index: /branches/eam_branch_00/ippTasks/detrend.stack.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/detrend.stack.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/detrend.stack.pro	(revision 11109)
@@ -1,3 +1,4 @@
 ## this file contains the tasks for running the detrend stacking stage
+## these tasks use the book detPendingStackedImfile
 
 if ($?network == 0)
@@ -19,12 +20,12 @@
 exec mkdir -p $LOGSUBDIR
 
-book init DetrendStackClass
+book init detPendingStackedImfile
 
 macro detstack.status
-  book listbook DetrendStackClass
+  book listbook detPendingStackedImfile
 end
 
 # select images ready for detrend_stack.pl
-# new entries are added to DetrendStackClass
+# new entries are added to detPendingStackedImfile
 # compare the new list with the ones already selected
 task	       dettool.stack.load
@@ -35,5 +36,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/detstack.log
+  stdout NULL
   stderr $LOGSUBDIR/detstack.log
 
@@ -45,11 +46,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout DetrendStackClass -key det_id:iteration:class_id -uniq
+    ipptool2book stdout detPendingStackedImfile -key det_id:iteration:class_id -uniq
     if ($VERBOSE > 2)
-      book listbook DetrendStackClass
+      book listbook detPendingStackedImfile
     end
 
     # delete existing entries which are DONE
-    book delpage DetrendStackClass -key state DONE
+    book delpage detPendingStackedImfile -key state DONE
   end
 
@@ -72,18 +73,18 @@
 
   task.exec
-    book npages DetrendStackClass -var N
+    book npages detPendingStackedImfile -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in DetrendStackClass
-    book getpage DetrendStackClass 0 -var pageName -key state NULL
+    # look for new images in detPendingStackedImfile
+    book getpage detPendingStackedImfile 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword DetrendStackClass $pageName state RUN
-    book getword DetrendStackClass $pageName det_id    -var DET_ID
-    book getword DetrendStackClass $pageName iteration -var ITERATION
-    book getword DetrendStackClass $pageName det_type  -var DET_TYPE
-    book getword DetrendStackClass $pageName class_id  -var CLASS_ID
-    book getword DetrendStackClass $pageName camera    -var CAMERA  
+    book setword detPendingStackedImfile $pageName state RUN
+    book getword detPendingStackedImfile $pageName det_id    -var DET_ID
+    book getword detPendingStackedImfile $pageName iteration -var ITERATION
+    book getword detPendingStackedImfile $pageName det_type  -var DET_TYPE
+    book getword detPendingStackedImfile $pageName class_id  -var CLASS_ID
+    book getword detPendingStackedImfile $pageName camera    -var CAMERA  
 
     # specify choice of remote host:
@@ -95,4 +96,5 @@
 
     # XXX add $WORKDIR/$LOG_DIR
+    # XXX use ipp_filename.pl to lookup output file names
     stdout $LOGSUBDIR/$CAMERA.$DET_TYPE.$DET_ID.$ITERATION.$CLASS_ID.log
     stderr $LOGSUBDIR/$CAMERA.$DET_TYPE.$DET_ID.$ITERATION.$CLASS_ID.log
@@ -108,13 +110,7 @@
   end
 
-  # success
-  task.exit 0
-    book setword DetrendStackClass $options:0 state DONE
-  end
-
   # default exit status
   task.exit    default
-    showcommand failure
-    book setword DetrendStackClass $options:0 state FAIL
+    process_exit detPendingStackedImfile $options:0 $JOB_STATUS
   end
 
@@ -122,5 +118,5 @@
   task.exit    timeout
     showcommand timeout
-    book setword DetrendStackClass $options:0 state TIMEOUT
+    book setword detPendingStackedImfile $options:0 state TIMEOUT
   end
 end
Index: /branches/eam_branch_00/ippTasks/phase0.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/phase0.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/phase0.pro	(revision 11109)
@@ -38,5 +38,5 @@
   periods      -timeout 30
 
-  # XXX provide a special word (ie NULL) that silently drops stdout, stderr?
+  # silently drop stdout
   stdout NULL
   stderr $LOGSUBDIR/phase0.imfile.log
@@ -86,11 +86,10 @@
 
     book setword p0PendingImfile $pageName state RUN
-    # p0PendingImfile->pageName->state = RUN
 
     book getword p0PendingImfile $pageName exp_tag -var EXP_TAG
-    # $EXP_TAG = p0PendingImfile->pageName->exp_tag
     book getword p0PendingImfile $pageName class -var CLASS
     book getword p0PendingImfile $pageName class_id -var CLASS_ID
     book getword p0PendingImfile $pageName uri -var URI
+    book getword p0PendingImfile $pageName outpath -var OUTPATH
 
     # specify choice of remote host
@@ -105,7 +104,11 @@
     list word -split $word
     $base = $word:0
-    stdout $LOGSUBDIR/$base/$EXP_TAG.p0.log
-    stderr $LOGSUBDIR/$base/$EXP_TAG.p0.log
-    exec mkdir -p $LOGSUBDIR/$base
+
+    ## generate output log based on filerule
+    $outroot = $OUTPATH/$EXP_TAG
+    $logfile = `ipp_filename.pl PHASE0.LOG $outroot $CLASS_ID`
+    stdout $logfile
+    stderr $logfile
+    exec mkdir -p $OUTPATH
 
     # save the pageName for future reference below
@@ -119,5 +122,5 @@
   end
 
-  # success
+  # default exit status
   task.exit default
     process_exit p0PendingImfile $options:0 $JOB_STATUS
@@ -139,5 +142,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/phase0.exp.log
+  stdout NULL
   stderr $LOGSUBDIR/phase0.exp.log
 
@@ -187,4 +190,5 @@
     book setword p0PendingExp $pageName state RUN
     book getword p0PendingExp $pageName exp_tag -var EXP_TAG
+    book getword p0PendingExp $pageName outpath -var OUTPATH
 
     # specify choice of remote host:(need to choose based on chips)
@@ -195,11 +199,10 @@
     end
 
-    # XXX this is still a lame rule
-    $word = `basename $EXP_TAG | tr '.' ' '`
-    list word -split $word
-    $base = $word:0
-    stdout $LOGSUBDIR/$base/$EXP_TAG.p0.log
-    stderr $LOGSUBDIR/$base/$EXP_TAG.p0.log
-    exec mkdir -p $LOGSUBDIR/$base
+    ## generate output log based on filerule
+    $outroot = $OUTPATH/$EXP_TAG
+    $logfile = `ipp_filename.pl PHASE0.LOG $outroot FPA`
+    stdout $logfile
+    stderr $logfile
+    exec mkdir -p $OUTPATH
 
     # save the pageName for future reference below
Index: /branches/eam_branch_00/ippTasks/phase2.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/phase2.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/phase2.pro	(revision 11109)
@@ -1,4 +1,4 @@
 ## this file contains the tasks for running the phase 0 stage
-## these tasks use the book Phase2Imfiles
+## these tasks use the book p2PendingImfile
 
 if ($?network == 0)
@@ -20,12 +20,12 @@
 exec mkdir -p $LOGSUBDIR
 
-book init Phase2Imfiles
+book init p2PendingImfile
 
 macro phase2.status
-  book listbook Phase2Imfiles
+  book listbook p2PendingImfile
 end
 
 # select images ready for phase2 analysis
-# new entries are added to Phase2Imfiles
+# new entries are added to p2PendingImfile
 # skip already-present entries
 task	       phase2.imfile.load
@@ -36,5 +36,5 @@
   periods      -timeout 30
 
-  stdout $LOGSUBDIR/phase2.imfile.log
+  stdout NULL
   stderr $LOGSUBDIR/phase2.imfile.log
 
@@ -46,11 +46,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout Phase2Imfiles -key exp_tag:class_id -uniq
+    ipptool2book stdout p2PendingImfile -key exp_tag:class_id -uniq
     if ($VERBOSE > 2)
-      book listbook Phase2Imfiles
+      book listbook p2PendingImfile
     end
 
     # delete existing entries which are DONE
-    book delpage Phase2Imfiles -key state DONE
+    book delpage p2PendingImfile -key state DONE
   end
 
@@ -73,17 +73,18 @@
 
   task.exec
-    book npages Phase2Imfiles -var N
+    book npages p2PendingImfile -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in Phase2Imfiles (state == NULL)
-    book getpage Phase2Imfiles 0 -var pageName -key state NULL
+    # look for new images in p2PendingImfile (state == NULL)
+    book getpage p2PendingImfile 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword Phase2Imfiles $pageName state RUN
-    book getword Phase2Imfiles $pageName camera -var CAMERA
-    book getword Phase2Imfiles $pageName exp_tag -var EXP_TAG
-    book getword Phase2Imfiles $pageName class_id -var CLASS_ID
-    book getword Phase2Imfiles $pageName uri -var URI
+    book setword p2PendingImfile $pageName state RUN
+    book getword p2PendingImfile $pageName camera -var CAMERA
+    book getword p2PendingImfile $pageName exp_tag -var EXP_TAG
+    book getword p2PendingImfile $pageName outpath -var OUTPATH
+    book getword p2PendingImfile $pageName class_id -var CLASS_ID
+    book getword p2PendingImfile $pageName uri -var URI
 
     # specify choice of remote host
@@ -95,13 +96,10 @@
     end
 
-    ## add 'p2' to the log files?
-    # XXX this is still a lame rule
-    # make 'basename' an opihi function?
-    $word = `basename $EXP_TAG | tr '.' ' '`
-    list word -split $word
-    $base = $word:0
-    stdout $LOGSUBDIR/$base/$EXP_TAG.$CLASS_ID.log
-    stderr $LOGSUBDIR/$base/$EXP_TAG.$CLASS_ID.log
-    exec mkdir -p $LOGSUBDIR/$base
+    ## generate output log based on filerule
+    $outroot = $OUTPATH/$EXP_TAG
+    $logfile = `ipp_filename.pl PHASE2.LOG $outroot $CLASS_ID`
+    stdout $logfile
+    stderr $logfile
+    exec mkdir -p $OUTPATH
 
     # save the pageName for future reference below
@@ -112,17 +110,10 @@
       echo command phase2.pl --exp_tag $EXP_TAG --class_id $CLASS_ID --uri $URI --camera $CAMERA
     end
-    command phase2.pl --exp_tag $EXP_TAG --class_id $CLASS_ID --uri $URI --camera $CAMERA
-  end
-
-  # success
-  task.exit 0
-    # phase2.pl updates DB tables, here we just update the page
-    book setword Phase2Imfiles $options:0 state DONE
+    command phase2.pl --exp_tag $EXP_TAG --class_id $CLASS_ID --uri $URI --camera $CAMERA --outpath $OUTPATH
   end
 
   # default exit status
   task.exit    default
-    showcommand failure
-    book setword Phase2Imfiles $options:0 state FAIL
+    process_exit p2PendingImfile $options:0 $JOB_STATUS
   end
 
@@ -130,5 +121,5 @@
   task.exit    timeout
     showcommand timeout
-    book setword Phase2Imfiles $options:0 state TIMEOUT
+    book setword p2PendingImfile $options:0 state TIMEOUT
   end
 end
Index: /branches/eam_branch_00/ippTasks/phase3.pro
===================================================================
--- /branches/eam_branch_00/ippTasks/phase3.pro	(revision 11108)
+++ /branches/eam_branch_00/ippTasks/phase3.pro	(revision 11109)
@@ -1,4 +1,4 @@
 ## this file contains the tasks for running the phase 3 stage
-## these tasks use the book Phase3Exposures
+## these tasks use the book p3PendingExp
 
 if ($?network == 0)
@@ -20,12 +20,12 @@
 exec mkdir -p $LOGSUBDIR
 
-book init Phase3Exposures
+book init p3PendingExp
 
 macro phase3.status
-  book listbook Phase3Exposures
+  book listbook p3PendingExp
 end
 
 # select images ready for phase3 analysis
-# new entries are added to Phase3Exposures
+# new entries are added to p3PendingExp
 # skip already-present entries
 task	       phase3.exp.load
@@ -46,11 +46,11 @@
   task.exit    0
     # convert 'stdout' to book format
-    ipptool2book stdout Phase3Exposures -key exp_tag -uniq
+    ipptool2book stdout p3PendingExp -key exp_tag -uniq
     if ($VERBOSE > 2)
-      book listbook Phase3Exposures
+      book listbook p3PendingExp
     end
 
     # delete existing entries which are DONE
-    book delpage Phase3Exposures -key state DONE
+    book delpage p3PendingExp -key state DONE
   end
 
@@ -73,15 +73,15 @@
 
   task.exec
-    book npages Phase3Exposures -var N
+    book npages p3PendingExp -var N
     if ($N == 0) break
     if ($network == 0) break
     
-    # look for new images in Phase3Exposures (state == NULL)
-    book getpage Phase3Exposures 0 -var pageName -key state NULL
+    # look for new images in p3PendingExp (state == NULL)
+    book getpage p3PendingExp 0 -var pageName -key state NULL
     if ($pageName == NULL) break
 
-    book setword Phase3Exposures $pageName state RUN
-    book getword Phase3Exposures $pageName camera -var CAMERA
-    book getword Phase3Exposures $pageName exp_tag -var EXP_TAG
+    book setword p3PendingExp $pageName state RUN
+    book getword p3PendingExp $pageName camera -var CAMERA
+    book getword p3PendingExp $pageName exp_tag -var EXP_TAG
 
     # specify choice of remote host:(need to choose based on chips)
@@ -113,5 +113,5 @@
   task.exit 0
     # phase3exp.pl updates DB tables, here we just update the page
-    book setword Phase3Exposures $options:0 state DONE
+    book setword p3PendingExp $options:0 state DONE
   end
 
@@ -119,5 +119,5 @@
   task.exit    default
     showcommand failure
-    book setword Phase3Exposures $options:0 state FAIL
+    book setword p3PendingExp $options:0 state FAIL
   end
 
@@ -125,5 +125,5 @@
   task.exit    timeout
     showcommand timeout
-    book setword Phase3Exposures $options:0 state TIMEOUT
+    book setword p3PendingExp $options:0 state TIMEOUT
   end
 end
