I'm using doit as part of a non-linear video editor. In the render graph I build, there are a lot of intermediate steps which *can* produce output files, but which don't always need to do so. That is, I may have an input video which gets mirrored and then composited into an output video; the mirrored intermediate doesn't need to be written to disk for the final output, though it in principle can.
What I'd like is a way to write a task that can detect when it's a "leaf" task and selectively write a file to disk. So in the example above, the 'mirror' task could detect if it's only being used to produce intermediate results and, if so, not write anything to disk.
How can I do that? It seems like the information must be in the data structures exposed by the doit API, but I haven't found it.