title: OpenAL device, buffer and context relationship
body: <p>I'm trying to create an object oriented model to wrap OpenAL and have a little problem understanding the devices, buffers and contexts. </p>
  
  <p>From what I can see in the Programmer's Guide, there are multiple devices, each of which can have multiple contexts as well as multiple buffers. Each context has a listener, and the <code>alListener*()</code> functions all operate on the listener of the active context. (Meaning that I have to make another context active first if I wanted to change it's listener, if I got that right.) So far, so good.
  What irritates me though is that I need to pass a device to the <code>alcCreateContext()</code> function, but none to <code>alGenBuffers()</code>. </p>
  
  <p>How does this work then? When I open multiple devices, on which device are the buffers created? Are the buffers shared between all devices? What happens to the buffers if I close all open devices?</p>
  
  <p>(Or is there something I missed?)</p>