nomlib
Loading...
Searching...
No Matches
nom::audio::IOAudioEngine Class Referenceabstract

Abstract base class for an instance of the audio hardware interface. More...

#include <IOAudioEngine.hpp>

Inheritance diagram for nom::audio::IOAudioEngine:
[legend]

Public Member Functions

virtual void init (void *driver)=0
virtual bool valid () const =0
virtual uint32 caps () const =0
virtual void set_cap (uint32 format)=0
virtual bool connected () const =0
virtual uint32 channel_format (uint32 num_channels, uint32 channel_format)=0
virtual bool valid_buffer (SoundBuffer *buffer)=0
virtual bool valid_source (SoundBuffer *buffer)=0
virtual uint32 state (SoundBuffer *target)=0
virtual real32 pitch (SoundBuffer *target)=0
virtual real32 volume () const =0
virtual Point3f position () const =0
virtual real32 volume (SoundBuffer *buffer) const =0
virtual real32 min_volume (SoundBuffer *buffer)=0
virtual real32 max_volume (SoundBuffer *buffer)=0
virtual Point3f velocity (SoundBuffer *buffer)=0
virtual Point3f position (SoundBuffer *buffer)=0
virtual real32 playback_position (SoundBuffer *buffer)=0
virtual real32 playback_samples (SoundBuffer *buffer)=0
virtual void set_volume (real32 gain)=0
virtual void set_position (const Point3f &p)=0
virtual void set_volume (SoundBuffer *target, real32 gain)=0
virtual void set_min_volume (SoundBuffer *target, real32 gain)=0
virtual void set_max_volume (SoundBuffer *target, real32 gain)=0
virtual void set_velocity (SoundBuffer *target, const Point3f &v)=0
virtual void set_position (SoundBuffer *target, const Point3f &p)=0
virtual void set_pitch (SoundBuffer *target, real32 pitch)=0
virtual void set_playback_position (SoundBuffer *target, real32 offset_seconds)=0
virtual void play (SoundBuffer *target)=0
virtual void stop (SoundBuffer *target)=0
virtual void pause (SoundBuffer *target)=0
virtual void resume (SoundBuffer *target)=0
virtual bool push_buffer (SoundBuffer *buffer)=0
virtual bool queue_buffer (SoundBuffer *buffer)=0
virtual void suspend ()=0
virtual void resume ()=0
virtual void close ()=0
virtual void free_buffer (SoundBuffer *buffer)=0

Detailed Description

Abstract base class for an instance of the audio hardware interface.

\ntoe An audio driver is required to subclass IOAudioDevice in order to provide working audio to the system. A single driver instance will contain a single instance of the driver's IOAudioDevice subclass. The subclass is responsible for mapping all hardware device resources from the service provider nub. It must control access to the hardware so that the hardware doesn't fall into an inconsistent state.

Definition at line 51 of file IOAudioEngine.hpp.

Constructor & Destructor Documentation

◆ IOAudioEngine()

nom::audio::IOAudioEngine::IOAudioEngine ( )
inlineprotected

Definition at line 54 of file IOAudioEngine.hpp.

◆ ~IOAudioEngine()

virtual nom::audio::IOAudioEngine::~IOAudioEngine ( )
inlinevirtual

Definition at line 61 of file IOAudioEngine.hpp.

Member Function Documentation

◆ channel_format()

virtual uint32 nom::audio::IOAudioEngine::channel_format ( uint32 num_channels,
uint32 channel_format )
pure virtual

Implemented in nom::audio::ALAudioEngine.


The documentation for this class was generated from the following file: