Over the years, GLHelper has become a dumping ground for a myriad of GL utility functions, in addition to rather large components like scaling, YUV conversion, and texture readback. Also, many of its methods are either: 1) no longer called by anything; 2) only used/useful by one specific caller. Furthermore, GLHelper has a very brittle memory-management model, where all objects it creates assume their GLHelper "parent" will outlive them (but in subtle cases, it does not!).
This bug is to track the major "sprucing-up" of GLHelper:
1. Remove dead code. Push-out trivial methods, or "one caller" methods that don't justify a central, shared location.
2. Update style, and improve/modernize readability.
3. Fix memory management/lifecycle issues so that clients "can't easily go wrong."
4. Factor-out scaling, YUV conversion, and readback into separate things.
5. Refactor/Improve unit testing, benchmarking, etc.
Comment 1 by bugdroid1@chromium.org
, Aug 4