Good C++ rule of thumb is do not inline unless you need it. Exception to that or get and set fonctions which only return or set a parameter if they do not require a new include file the header file(for small projects, you can simply forget about the if).
So your function wouldn’t be inline. But if later in your program, you see that the call overhead is killing you because it is getting called often, then inline it. My first bet is you probably won’t need to inline it.
This fonction is actually really easy to inline for compilers because it is not dependant on anything, it is totally self-contained. So unless one of the glCall is inline(which is impossible) because they come from a dll then
inlining is trivial.
inline of recursive fonctions is possible if you tweak the compiler options correctly( depth unrolling, etc…), but it is not portable and simply not recommended because from my experience, it will simply crap out!!