:mod:`pygame2.openal` -- basic OpenAL wrapper module
====================================================

Basic Pygame2 OpenAL wrapper module.




Identifiers for the property get and set methods:

+------+------------------------------------------------------------+
| 'b'  | Get or set a single boolean value (e.g. AL_TRUE)           |
+------+------------------------------------------------------------+
| 'ba' | Get or set an array of boolean values. The array can be    |
|      | any type of sequence containing matching values.           |
+------+------------------------------------------------------------+
| 'i'  | Get or set a single integer value.                         |
+------+------------------------------------------------------------+
| 'i3' | Get or set an triplet of integer values. The array can be  |
|      | any type of sequence containing matching values.           |
+------+------------------------------------------------------------+
| 'ia' | Get or set an array of integer values. The array can be    |
|      | any type of sequence containing matching values.           |
+------+------------------------------------------------------------+
| 'f'  | Get or set a single floating point value.                  |
+------+------------------------------------------------------------+
| 'f3' | Get or set an triplet of floating point values. The array  |
|      | can be any type of sequence containing matching values.    |
+------+------------------------------------------------------------+
| 'fa' | Get or set an array of floating point values. The array    |
|      | can be any type of sequence containing matching values.    |
+------+------------------------------------------------------------+
| 'd'  | Get or set a single double precision floating point value. |
+------+------------------------------------------------------------+
| 'da' | Get or set an array of double precision floating point     |
|      | values. The array can be any type of sequence containing   |
|      | matching values.                                           |
+------+------------------------------------------------------------+


.. module:: pygame2.openal
   :synopsis: basic OpenAL wrapper module

Module Functions
----------------
.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


.. function:: TODO

  TODO


Buffers
-------
.. class:: Buffers () -> NotImplementedError

  Buffers objects are used by OpenAL to buffer and provide PCM data
  for playback, recording and manipulation.

  The Buffers object provides methods and properties to manipulate
  certain aspects of the buffered data.

  Buffers instances cannot be created directly, but are bound to a
  :class:`Device`. To create a Buffers instance for the currently
  active :class:`Device`, use the :meth:`Context.create_buffers`
  method.


Attributes
^^^^^^^^^^
.. attribute:: Buffers.buffers

  The buffer identifiers used inb the Buffers instance.

.. attribute:: Buffers.count

  The number of buffers.

Methods
^^^^^^^
.. method:: Buffers.buffer_data (bufnum, format, data, samplerate)

  Buffers a chunk of *data* into one of the created buffers.


.. method:: Buffers.get_prop (bufnum, prop, type) -> value or (value, ...)

  Retrieves the value(s) of an OpenAL property for the Buffers.




.. method:: Buffers.TODO

  TODO

CaptureDevice
-------------
.. class:: TODO

  None

Attributes
^^^^^^^^^^
.. attribute:: CaptureDevice.format

  None

.. attribute:: CaptureDevice.frequency

  None

.. attribute:: CaptureDevice.size

  None

Methods
^^^^^^^
.. method:: CaptureDevice.TODO

  TODO

.. method:: CaptureDevice.TODO

  TODO

.. method:: CaptureDevice.TODO

  TODO

Context
-------
.. class:: TODO

  None

Attributes
^^^^^^^^^^
.. attribute:: Context.device

  None

.. attribute:: Context.distance_model

  None

.. attribute:: Context.doppler_factor

  None

.. attribute:: Context.is_current

  None

.. attribute:: Context.listener

  None

.. attribute:: Context.speed_of_sound

  None

Methods
^^^^^^^
.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

.. method:: Context.TODO

  TODO

Device
------
.. class:: TODO

  None

Attributes
^^^^^^^^^^
.. attribute:: Device.extensions

  None

.. attribute:: Device.name

  None

Methods
^^^^^^^
.. method:: Device.TODO

  TODO

.. method:: Device.TODO

  TODO

.. method:: Device.TODO

  TODO

Listener
--------
.. class:: TODO

  None

Methods
^^^^^^^
.. method:: Listener.TODO

  TODO

.. method:: Listener.TODO

  TODO

Sources
-------
.. class:: TODO

  None

Attributes
^^^^^^^^^^
.. attribute:: Sources.count

  None

.. attribute:: Sources.sources

  None

Methods
^^^^^^^
.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO

.. method:: Sources.TODO

  TODO


