Review: Processor API Rejigger


Jeremy Selan <jeremy...@...>
 


Processor class now uses the pimpl pattern, so new functions can added in the future without impacting ABI compatibility. This patch maintains source code compatibility, but breaks the ABI interface. Will be worth it prior to 0.8 lockoff though.

The rest of the OCIO API used this approach, this one class was the only omission. The reason it was not done initially was the incestuous relationship between the Config and the Processor, but this is now solved by making the Processor Impl friends with the Config class. (Note that this doesn't change the existing relationship usage patterns, just clarifies it in terms of the code).