@Override public boolean receiveImage(ImageToProcess img,TaskImageContainer task,boolean blockUntilImageRelease,boolean closeOnImageRelease,Optional<Runnable> runnableWhenDone) throws InterruptedException {
  Set<TaskImageContainer> passTasks=new HashSet<TaskImageContainer>(1);
  passTasks.add(task);
  return receiveImage(img,passTasks,blockUntilImageRelease,closeOnImageRelease,runnableWhenDone);
}

@ Override public boolean receiveImage ( ImageToProcess img , TaskImageContainer task , boolean blockUntilImageRelease , boolean closeOnImageRelease , Optional < Runnable > runnableWhenDone ) throws InterruptedException { Set < TaskImageContainer > passTasks = new HashSet < TaskImageContainer > ( 1 ) ; passTasks . add ( task ) ; return receiveImage ( img , passTasks , blockUntilImageRelease , closeOnImageRelease , runnableWhenDone ) ; }
implements that top - level image single task submission that is defined by the imageconsumer interface .
