-
Niklas Haas authored
This refactors the way we store data like scaler LUTs, with the intent of generalizing it for other types of LUTs (e.g. dither matrix) in an easy-to-use but flexible way. Instead of trying to come up with sane semantics for who gets to use what fields inside a pl_shader_obj, we just abstract it away and let the caller deal with the *priv representation (as usual). Unfortunately, this requires "nesting" pl_shader_objs for cases like the sampler LUTs where we need to store information about the scaling kernel *and* the underlying LUT. But that's not too bad, I think. I had to rewrite the code that uses pl_shader_objs. Hopefully for the better.