X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_opengl.h;h=10fed62f55e8b374996c775ebd7867ee6d3efafe;hb=9697eabdc1130eeed082ce81a0a4b5f90d9347d4;hp=bd9ccf02cc0a7c23e090a4fac52610f40d1abc98;hpb=6f258887aa634d8cceaf9797779521dfd8340be2;p=vlc diff --git a/include/vlc_opengl.h b/include/vlc_opengl.h index bd9ccf02cc..10fed62f55 100644 --- a/include/vlc_opengl.h +++ b/include/vlc_opengl.h @@ -6,19 +6,19 @@ * * Authors: Laurent Aimar * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ #ifndef VLC_GL_H @@ -48,6 +48,7 @@ struct vlc_gl_t void (*swap)(vlc_gl_t *); int (*lock)(vlc_gl_t *); void (*unlock)(vlc_gl_t *); + void*(*getProcAddress)(vlc_gl_t *, const char *); }; enum { @@ -56,7 +57,7 @@ enum { VLC_OPENGL_ES2, }; -VLC_API vlc_gl_t *vlc_gl_Create(struct vout_window_t *, unsigned, const char *) LIBVLC_USED; +VLC_API vlc_gl_t *vlc_gl_Create(struct vout_window_t *, unsigned, const char *) VLC_USED; VLC_API void vlc_gl_Destroy(vlc_gl_t *); static inline int vlc_gl_MakeCurrent(vlc_gl_t *gl) @@ -80,4 +81,9 @@ static inline void vlc_gl_Swap(vlc_gl_t *gl) gl->swap(gl); } +static inline void *vlc_gl_GetProcAddress(vlc_gl_t *gl, const char *name) +{ + return (gl->getProcAddress != NULL) ? gl->getProcAddress(gl, name) : NULL; +} + #endif /* VLC_GL_H */