Optimize away duplicate conversion nodes.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Sat, 19 Jan 2013 23:31:23 +0000 (00:31 +0100)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Sat, 19 Jan 2013 23:31:23 +0000 (00:31 +0100)
commit6e03d8c6dec4b4639137893fe4e1aff224836f59
tree8b039d8c0542898dd6d79e06dd7aa31a8cfee977
parenta770ba7526844f395b08625480befad83b8fcadf
Optimize away duplicate conversion nodes.

Sometimes an effect can be used by two other effects that both demand
the same conversion. If so, we should simply insert a conversion after
that effect and connect _all_ outputs to that conversion, since
conversions to linear/sRGB/premultiplied never hurt for us.

Add unit tests for the gamma and colorspace cases. I could have added
for the alpha case, too, but it got very tedious. :-)
effect_chain.cpp
effect_chain_test.cpp