I want to have only one shader with levels, color keying, tonemap, volumetrics, …
is it possible ?
if yes with only one or multiple pass ?
theoretically it is possible to stuff it all into one shader w/o multiple passes.
It depends, however, on the version of shader you are using, which limits your code to a certain amout of instructions, which will most likely be the bottleneck.