Index: trunk/ippTasks/chip.pro
===================================================================
--- trunk/ippTasks/chip.pro	(revision 24595)
+++ trunk/ippTasks/chip.pro	(revision 24596)
@@ -3,21 +3,15 @@
 ## these tasks use the book chipPendingImfile
 
-## XXX the cleanup stage probably needs to mimic the chip processing stages, with an exposure and imfile layer
-## can we define the cleanup stages in a separate file derived from this file? 
-
 # test for required global variables
 check.globals
 
 book init chipPendingImfile
-#book init chipPendingCleanup
 
 macro chip.status
   book listbook chipPendingImfile
-#  book listbook chipPendingCleanup
 end
 
 macro chip.reset
   book init chipPendingImfile
-#  book init chipPendingCleanup
 end
 
@@ -46,24 +40,7 @@
 end
 
-# macro chip.cleanup.on
-#   task chip.cleanup.load
-#     active true
-#   end
-#   task chip.cleanup.run
-#     active true
-#   end
-# end
-
-# macro chip.cleanup.off
-#   task chip.cleanup.load
-#     active false
-#   end
-#   task chip.cleanup.run
-#     active false
-#   end
-# end
-
 # this variable will cycle through the known database names
 $chip_DB = 0
+$chip_revert_DB = 0
 
 # select images ready for chip analysis
@@ -273,122 +250,47 @@
 end
 
-# # this variable will cycle through the known database names
-# $chip_cleanup_DB = 0
-
-# # select images ready for chip analysis
-# # new entries are added to chipPendingImfile
-# # skip already-present entries
-# task	       chip.cleanup.load
-#   host         local
-
-#   periods      -poll $LOADPOLL
-#   periods      -exec $LOADEXEC
-#   periods      -timeout 30
-#   npending     1
-#   active       false
-
-#   stdout NULL
-#   stderr $LOGDIR/chip.cleanup.log
-
-#   task.exec
-#     if ($LABEL:n == 0) break
-#     $run = chiptool -pendingcleanuprun
-#     if ($DB:n == 0)
-#       option DEFAULT
-#     else
-#       # save the DB name for the exit tasks
-#       option $DB:$chip_cleanup_DB
-#       $run = $run -dbname $DB:$chip_cleanup_DB
-#       $chip_cleanup_DB ++
-#       if ($chip_cleanup_DB >= $DB:n) set chip_cleanup_DB = 0
-#     end
-#     add_poll_args run
-#     add_poll_labels run
-#     command $run
-#   end
-
-#   # success
-#   task.exit    0
-#     # convert 'stdout' to book format
-#     ipptool2book stdout chipPendingCleanup -key chip_id -uniq -setword dbname $options:0 -setword pantaskState INIT
-#     if ($VERBOSE > 2)
-#       book listbook chipPendingCleanup
-#     end
-
-#     # delete existing entries in the appropriate pantaskStates
-#     process_cleanup chipPendingCleanup
-#   end
-
-#   # locked list
-#   task.exit    default
-#     showcommand failure
-#   end
-
-#   task.exit    crash
-#     showcommand crash
-#   end
-
-#   # operation times out?
-#   task.exit    timeout
-#     showcommand timeout
-#   end
-# end
-
-# # run the ipp_cleanup.pl script on pending images
-# task	       chip.cleanup.run
-#   periods      -poll $RUNPOLL
-#   periods      -exec $RUNEXEC
-#   periods      -timeout 60
-#   active       false
-
-#   task.exec
-#     book npages chipPendingCleanup -var N
-#     if ($N == 0) break
-#     if ($NETWORK == 0) break
-    
-#     # look for new images in chipPendingCleanup (pantaskState == INIT)
-#     book getpage chipPendingCleanup 0 -var pageName -key pantaskState INIT
-#     if ("$pageName" == "NULL") break
-
-#     book setword chipPendingCleanup $pageName pantaskState RUN
-#     book getword chipPendingCleanup $pageName camera -var CAMERA
-#     book getword chipPendingCleanup $pageName state -var CLEANUP_MODE
-#     book getword chipPendingCleanup $pageName chip_id -var CHIP_ID
-#     book getword chipPendingCleanup $pageName dbname -var DBNAME
-
-#     # specify choice of local or remote host based on camera and chip (class_id)
-#     set.host.for.camera $CAMERA FPA
-
-#     stdout $LOGDIR/chip.cleanup.log
-#     stderr $LOGDIR/chip.cleanup.log
-
-#     # XXX is everything listed here needed?
-#     $run = ipp_cleanup.pl --stage chip --stage_id $CHIP_ID --camera $CAMERA --mode $CLEANUP_MODE
-#     add_standard_args run
-
-#     # save the pageName for future reference below
-#     options $pageName
-
-#     # create the command line
-#     if ($VERBOSE > 1)
-#       echo command $run
-#     end
-#     command $run
-#   end
-
-#   # default exit status
-#   task.exit    default
-#     process_exit chipPendingCleanup $options:0 $JOB_STATUS
-#   end
-
-#   task.exit    crash
-#     showcommand crash
-#     book setword chipPendingCleanup $options:0 pantaskState CRASH
-#   end
-
-#   # operation timed out?
-#   task.exit    timeout
-#     showcommand timeout
-#     book setword chipPendingCleanup $options:0 pantaskState TIMEOUT
-#   end
-# end
+task chip.revert
+  host         local
+
+  periods      -poll 5.0
+  periods      -exec 60.0
+  periods      -timeout 120.0
+  npending     1
+
+  stdout NULL
+  stderr $LOGDIR/revert.log
+
+  task.exec
+    if ($LABEL:n == 0) break
+    $run = chiptool -revertprocessedimfile
+    if ($DB:n == 0)
+      option DEFAULT
+    else
+      # save the DB name for the exit tasks
+      option $DB:$chip_revert_DB
+      $run = $run -dbname $DB:$chip_revert_DB
+      $chip_revert_DB ++
+      if ($chip_revert_DB >= $DB:n) set chip_revert_DB = 0
+    end
+    add_poll_labels run
+    command $run
+  end
+
+  # success
+  task.exit    0
+  end
+
+  # locked list
+  task.exit    default
+    showcommand failure
+  end
+
+  task.exit    crash
+    showcommand crash
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+  end
+end
