Cinder  0.8.6
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cinder::audio::DeviceManager Class Referenceabstract

Platform-specific Singleton for managing hardware devices. Applications normally should not need to use this, but instead should use the equivalent methods from Device. More...

#include <Device.h>

Inheritance diagram for cinder::audio::DeviceManager:
[legend]

Public Member Functions

virtual ~DeviceManager ()
 
virtual DeviceRef findDeviceByName (const std::string &name)
 
virtual DeviceRef findDeviceByKey (const std::string &key)
 
virtual const std::vector
< DeviceRef > & 
getDevices ()=0
 
virtual DeviceRef getDefaultOutput ()=0
 
virtual DeviceRef getDefaultInput ()=0
 
virtual std::string getName (const DeviceRef &device)=0
 
virtual size_t getNumInputChannels (const DeviceRef &device)=0
 
virtual size_t getNumOutputChannels (const DeviceRef &device)=0
 
virtual size_t getSampleRate (const DeviceRef &device)=0
 
virtual size_t getFramesPerBlock (const DeviceRef &device)=0
 
virtual void setSampleRate (const DeviceRef &device, size_t sampleRate)=0
 
virtual void setFramesPerBlock (const DeviceRef &device, size_t framesPerBlock)=0
 
virtual bool isFormatUpdatedAsync () const
 override if subclass needs to update params async, and will issue formatWillChange callbacks More...
 

Protected Member Functions

 DeviceManager ()
 
DeviceRef addDevice (const std::string &key)
 
void emitParamsWillChange (const DeviceRef &device)
 
void emitParamsDidChange (const DeviceRef &device)
 

Protected Attributes

std::vector< DeviceRefmDevices
 

Detailed Description

Platform-specific Singleton for managing hardware devices. Applications normally should not need to use this, but instead should use the equivalent methods from Device.

Constructor & Destructor Documentation

virtual cinder::audio::DeviceManager::~DeviceManager ( )
virtual
cinder::audio::DeviceManager::DeviceManager ( )
protected

Member Function Documentation

DeviceRef cinder::audio::DeviceManager::findDeviceByName ( const std::string name)
virtual
DeviceRef cinder::audio::DeviceManager::findDeviceByKey ( const std::string key)
virtual
virtual const std::vector<DeviceRef>& cinder::audio::DeviceManager::getDevices ( )
pure virtual
virtual DeviceRef cinder::audio::DeviceManager::getDefaultOutput ( )
pure virtual
virtual DeviceRef cinder::audio::DeviceManager::getDefaultInput ( )
pure virtual
virtual std::string cinder::audio::DeviceManager::getName ( const DeviceRef device)
pure virtual
virtual size_t cinder::audio::DeviceManager::getNumInputChannels ( const DeviceRef device)
pure virtual
virtual size_t cinder::audio::DeviceManager::getNumOutputChannels ( const DeviceRef device)
pure virtual
virtual size_t cinder::audio::DeviceManager::getSampleRate ( const DeviceRef device)
pure virtual
virtual size_t cinder::audio::DeviceManager::getFramesPerBlock ( const DeviceRef device)
pure virtual
virtual void cinder::audio::DeviceManager::setSampleRate ( const DeviceRef device,
size_t  sampleRate 
)
pure virtual
virtual void cinder::audio::DeviceManager::setFramesPerBlock ( const DeviceRef device,
size_t  framesPerBlock 
)
pure virtual
virtual bool cinder::audio::DeviceManager::isFormatUpdatedAsync ( ) const
virtual

override if subclass needs to update params async, and will issue formatWillChange callbacks

Reimplemented in cinder::audio::cocoa::DeviceManagerCoreAudio.

DeviceRef cinder::audio::DeviceManager::addDevice ( const std::string key)
protected
void cinder::audio::DeviceManager::emitParamsWillChange ( const DeviceRef device)
protected
void cinder::audio::DeviceManager::emitParamsDidChange ( const DeviceRef device)
protected

Member Data Documentation

std::vector<DeviceRef> cinder::audio::DeviceManager::mDevices
protected

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