[RFC] Better OpenGL separation

Alexandre Julliard julliard at winehq.com
Mon Nov 11 15:43:07 CST 2002

Lionel Ulmer <lionel.ulmer at free.fr> writes:

>  1) As almost all WGL functions have an HDC or OpenGL context argument (for
>     those having a context argument, the corresponding HDC can easily be
>     found). Thus one solution would be to use 'DC_GetDCPtr' to get the DC
>     pointer and then move all these functions in the GDI function pointer
>     table.
>     The problem with that is that 'DC_GetDCPtr' is already flagged as a hack
>     and so I am bit reluctant to use it :-)
>  2) Put all HDC function in GDI itself and replace in OpenGL's spec file all
>     of these by forwards to GDI.
>  3) Use the ExtEscape mechanism to not only get specific variables, but
>     something akin to what DDraw does to get the HAL function pointer table
>     and then use these pointers to do the real low level work in the WGL
>     functions.
> For the moment, I think 3) is the best. Feel free to propose other solutions
> :-)

I don't know, I think the current way is not so bad. It's better to
export just a couple of internal things like display and drawable than
a full table of functions that will be a pain to keep compatible
across versions. If you really want to get rid of the escapes then I
think 2) would be cleaner.

Alexandre Julliard
julliard at winehq.com

More information about the wine-devel mailing list