/*****************************************************************************
* VLCOpenGLVoutView.m: MacOS X OpenGL provider
*****************************************************************************
- * Copyright (C) 2001-2007 the VideoLAN team
+ * Copyright (C) 2001-2009 the VideoLAN team
* $Id$
*
* Authors: Colin Delacroix <colin@zoy.org>
msg_Dbg( p_vout, "Mac OS X Vout is opening" );
- var_Create( p_vout, "drawable", VLC_VAR_DOINHERIT );
- var_Get( p_vout, "drawable", &value_drawable );
+ var_Create( p_vout, "drawable-gl", VLC_VAR_DOINHERIT );
+ var_Get( p_vout, "drawabl-gl", &value_drawable );
p_vout->p_sys->o_pool = [[NSAutoreleasePool alloc] init];
id <VLCOpenGLVoutEmbedding> o_cocoaglview_container;
msg_Dbg( p_vout, "Mac OS X Vout is closing" );
- var_Destroy( p_vout, "drawable" );
+ var_Destroy( p_vout, "drawable-gl" );
o_cocoaglview_container = [p_vout->p_sys->o_glview container];
msg_Err( p_vout, "Cannot create AGL context." );
return VLC_EGENERIC;
}
- else {
+ else
+ {
// tell opengl not to sync buffer swap with vertical retrace (too inefficient)
GLint param = 0;
aglSetInteger(p_vout->p_sys->agl_ctx, AGL_SWAP_INTERVAL, ¶m);
aglEnable(p_vout->p_sys->agl_ctx, AGL_SWAP_INTERVAL);
}
- var_Get( p_vout->p_libvlc, "drawable", &val );
+ var_Get( p_vout->p_libvlc, "drawable-agl", &val );
p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int;
aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys->agl_drawable);
void aglEnd( vout_thread_t * p_vout )
{
aglSetCurrentContext(NULL);
- if( p_vout->p_sys->theWindow ) DisposeWindow( p_vout->p_sys->theWindow );
+ if( p_vout->p_sys->theWindow )
+ DisposeWindow( p_vout->p_sys->theWindow );
aglDestroyContext(p_vout->p_sys->agl_ctx);
}
Rect viewBounds;
Rect clipBounds;
- var_Get( p_vout->p_libvlc, "drawable", &val );
+ var_Get( p_vout->p_libvlc, "drawable-agl", &val );
p_vout->p_sys->agl_drawable = (AGLDrawable)val.i_int;
aglSetDrawable(p_vout->p_sys->agl_ctx, p_vout->p_sys->agl_drawable);
int OpenVideoGL ( vlc_object_t * p_this )
{
vout_thread_t * p_vout = (vout_thread_t *) p_this;
- vlc_value_t value_drawable;
+ int i_drawable_agl;
+ int i_drawable_gl;
if( !CGDisplayUsesOpenGLAcceleration( kCGDirectMainDisplay ) )
{
memset( p_vout->p_sys, 0, sizeof( vout_sys_t ) );
- var_Get( p_vout->p_libvlc, "drawable", &value_drawable );
-
- if( 0 /* Are we in the mozilla plugin ? XXX: get that from drawable */ )
+ i_drawable_agl = var_GetInteger( p_vout->p_libvlc, "drawable-agl" );
+ i_drawable_gl = var_GetInteger( p_vout->p_libvlc, "drawable-gl" );
+
+ /* Are we in the mozilla plugin ? */
+ if( i_drawable_agl > 0 )
{
p_vout->pf_init = aglInit;
p_vout->pf_end = aglEnd;
p_vout->pf_lock = aglLock;
p_vout->pf_unlock = aglUnlock;
}
- else
+ else /*if( i_drawable_gl > 0 )*/
{
/* Let's use the VLCOpenGLVoutView.m class */
p_vout->pf_init = cocoaglvoutviewInit;