skaslev / gl3w

Simple OpenGL core profile loading
http://github.com/skaslev/gl3w
The Unlicense
705 stars 157 forks source link

Generate C++ code #31

Closed tombsar closed 6 years ago

tombsar commented 8 years ago

I've tried modifying gl3w to output C++ instead of C code (mostly adding namespaces), and it seems to work for my purposes. Is this something that would be merged upstream? Would you prefer the existing gl3w_gen.py script to output both versions (i.e. gl3w.c and gl3w.cc), or have a separate generator script for C and C++? Would you rather I fork and create a separate repository for the C++ version?

skaslev commented 8 years ago

I'm guessing that different gl3w.hpp file would need to be generated too (with namespaces and no macros), or if gl3w.h is to be shared between the C and C++ version, it would be #ifdef __cplusplus-ed (but that is probably is not a good idea since gl3w.h will provide different interfaces for C and C++ users)

I can't think of any advantages of having the generated code be in C++ instead of C. I would merge it, depending on the size of the patch. Prior to seeing the patch my opinion is that gl3w doesn't need that extra complexity and a fork might be a good idea.

tombsar commented 8 years ago

The way I coded it generates gl3w.cc and gl3w.hh in addition to the .c and .h. You're right that there's probably no real benefit... I just liked the idea of having everything neatly contained inside a gl3w namespace.

Kos commented 8 years ago

I remember back in the day that the IDE would give me completions for functions but not for macros defined as functions. Years have passed, not sure how relevant this is nowadays.

tombsar commented 6 years ago

On reflection I think sticking to C is best for this library, so I'm going to close this as a WONTFIX.