ALSupport -- OpenAL Support Library

The ALSupport library is meant to do to OpenAL what the GLSupport library does to OpenGL, but it is currently in a sorry state due to lack of interest and lack of sound support in Vrui.

Header Files

Config.h
Config.h defines configuration-dependent macros used by the ALSupport library. It should be included by client code that wants to make decisions based on the availability of optional features.
ALTemplates.h
ALTemplates defines overloaded and templatized wrappers around selected OpenAL API calls.
ALObject.h
ALObject is a base class for objects that contain per-context OpenAL data in a multi-context sound rendering environment where OpenAL state must be kept separate from other application state. ALObject handles initialization and deinitialization of OpenAL state once for each OpenAL context an object is rendered in. All OpenAL data related to an object is stored in a per-context ALObject::DataItem object. See GLContextData for a thorough explanation of the concepts behind the analogous OpenGL multi-pipe graphics abstraction.
ALContextData.h
ALContextData is a class associating per-context OpenAL data with objects derived from ALObject. See GLContextData for a thorough explanation of the concepts behind the analogous OpenGL multi-pipe graphics abstraction.
ALGeometryWrappers.h
ALGeometryWrappers defines wrappers around selected OpenAL API calls which allow directly to pass matching objects from the templatized geometry library.