NAME

X11::GLX::FBConfig - Framebuffer configuration

VERSION

version 0.06

DESCRIPTION

This is a view of the opaque GLXFBConfig struct used by OpenGL to describe a framebuffer format. This is similar to an X11 Visual, but has more attributes specific to OpenGL.

ATTRIBUTES

display

Returns reference to the X11::Xlib instance this object was created from. (this object wraps a pointer whose scope seems to be the life of the X11 connection) Note that this FBConfig holds a strong reference to the connection, so the connection won't go out of scope as long as you hold onto this object.

visual_info

Returns an XVisualInfo for the FBConfig.

xid

Returns the X11 ID for this FBConfig.

C API Attributes

The following attributes have perl-ified names of the C API constants described in the Khronos documentation.

buffer_size
level
doublebuffer
stereo
aux_buffers
red_size
green_size
blue_size
alpha_size
depth_size
stencil_size
accum_red_size
accum_green_size
accum_blue_size
accum_alpha_size
render_type
drawable_type
x_renderable
visual_id
x_visual_type
config_caveat
transparent_type
transparent_index_value
transparent_red_value
transparent_green_value
transparent_blue_value
transparent_alpha_value
max_pbuffer_width
max_pbuffer_height
max_pbuffer_pixels

METHODS

get_attr

  use X11::GLX ':constants';
  my $val= $fbconfig->get_attr($GLX_CONSTANT);

Retrieve a GLX constant. Dies if $GLX_CONSTANT is not a valid attriute (according to GLX return value). Also dies if this FBConfig doesn't have an associated display or if the display has been closed.

AUTHOR

Michael Conrad <mike@nrdvana.net>

COPYRIGHT AND LICENSE

This software is copyright (c) 2021 by Michael Conrad.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.