Wwise SDK 2021.1.14
_ak_m_m_device_8h_source
Version
menu_open
link
AkMMDevice.h
Go to the documentation of this file.
454 pEnumerator->GetDefaultAudioEndpoint(eRender, in_eRole, (IMMDevice**)&pDevice.pDevice); //Transfer the ref
468 virtual Device Item(AkUInt32 in_idx) = 0; ///Gets item in_idx from the cache. Must be smaller than Count(). This function can block.
469 virtual void Lock() = 0; /// For thread safety. If you iterate through all the devices, lock the enumerator to avoid changes. However, if only accessing one single item, Item() is thread safe in itself.
471 virtual Device FindDevice(AkUInt32 in_id) = 0; ///Find a device that has this unique ID. The Id is one returned by AK::GetDeviceID.
virtual Device Item(AkUInt32 in_idx)=0
Returns the number of devices. This function can block.
DeviceProperty(const PROPERTYKEY &key, IPropertyStore *in_pProps)
Definition: AkMMDevice.h:50
DeviceCollection(IMMDeviceEnumerator *pEnumerator, EDataFlow eFlow, DWORD dwStateMask)
Definition: AkMMDevice.h:330
Definition: AkMMDevice.h:259
DeviceProperties(const DeviceProperties &other)=delete
DeviceEnumerator & operator=(const DeviceEnumerator &other)=delete
Iterator(IMMDeviceCollection *in_pDevices, UINT in_i)
Definition: AkMMDevice.h:264
DeviceProperty GetProperty(const PROPERTYKEY &key)
Definition: AkMMDevice.h:139
virtual void Lock()=0
Gets item in_idx from the cache. Must be smaller than Count(). This function can block.
DeviceProperties & operator=(DeviceProperties &&other)
Definition: AkMMDevice.h:125
DeviceCollection(const DeviceCollection &other)=delete
DeviceProperties GetProperties() const
Definition: AkMMDevice.h:223
Definition: AkMMDevice.h:90
DeviceCollection & operator=(DeviceCollection &&other)
Definition: AkMMDevice.h:363
DeviceCollection(DeviceCollection &&other)
Definition: AkMMDevice.h:341
DeviceProperties & operator=(const DeviceProperties &other)=delete
Definition: AkMMDevice.h:41
Interface to access the IMMDevice cache. This avoids driver accesses.
Definition: AkMMDevice.h:465
DeviceProperty(const DeviceProperty &other)=delete
Iterator operator+(AkUInt32 inc) const
Definition: AkMMDevice.h:271
DeviceEnumerator(DeviceEnumerator &&other)
Definition: AkMMDevice.h:415
interface IMMDeviceCollection * pDevices
Definition: AkMMDevice.h:318
interface IMMDeviceEnumerator * pEnumerator
Definition: AkMMDevice.h:460
virtual AkUInt32 Count()=0
interface IMMDeviceCollection * pDevices
Definition: AkMMDevice.h:397
bool operator!=(const Iterator &in_rOp) const
!= operator</div>
Definition: AkMMDevice.h:304
DeviceProperty & operator=(const DeviceProperty &other)=delete
Definition: AkMMDevice.h:147
AkUInt32 operator-(Iterator const &rhs) const
Definition: AkMMDevice.h:278
DeviceEnumerator(const DeviceEnumerator &other)=delete
Iterator & operator++()
++ operator</div>
Definition: AkMMDevice.h:284
DeviceProperties(IMMDevice *in_pDevice)
Definition: AkMMDevice.h:99
virtual void Unlock()=0
For thread safety. If you iterate through all the devices, lock the enumerator to avoid changes....
bool operator==(const Iterator &in_rOp) const
== operator</div>
Definition: AkMMDevice.h:298
Definition: AkMMDevice.h:402
DeviceProperty(DeviceProperty &&other)
Definition: AkMMDevice.h:57
DeviceCollection(IMMDeviceEnumerator *pEnumerator)
Definition: AkMMDevice.h:322
virtual Device FindDevice(AkUInt32 in_id)=0
For thread safety. See Lock()
DeviceEnumerator & operator=(DeviceEnumerator &&other)
Definition: AkMMDevice.h:435
Device GetDefaultDevice(ERole in_eRole)
Definition: AkMMDevice.h:451
AkForceInline AkInt32 AkWideCharToChar(const wchar_t *in_pszUnicodeString, AkUInt32 in_uiOutBufferSize, char *io_pszAnsiString)
String conversion helper.
Definition: AkPlatformFuncs.h:437
DeviceCollection & operator=(const DeviceCollection &other)=delete
Iterator & operator--()
– operator</div>
Definition: AkMMDevice.h:291
static HashParams::HashType ComputeLowerCase(const char *in_pData)
Definition: AkFNVHash.h:131
DeviceProperty & operator=(DeviceProperty &&other)
Definition: AkMMDevice.h:73
DeviceProperties(DeviceProperties &&other)
Definition: AkMMDevice.h:105
Was this page helpful?
Need Support?
Questions? Problems? Need more info? Contact us, and we can help!
Visit our Support pageTell us about your project. We're here to help.
Register your project and we'll help you get started with no strings attached!
Get started with Wwise