I am at the beggining of RR refactoring. The idea is to make each RR as a separate class and put it into source/RenderRequests each one as separate *.cpp file. The RR::type would disapear, cause the RR "type " would depend on called ctor. That would make 38 new classes. Also I would rewrite the ctors , not to take the pointers , but a concrete values , either int , char or string etc. as needed. I would have been already doing that , but at OD's one must consult the council of Elders first