Wwise SDK 2022.1.9
_ak_m_m_device_8h_source
Version
menu_open
link
AkMMDevice.h
Go to the documentation of this file.
453 pEnumerator->GetDefaultAudioEndpoint(eRender, in_eRole, (IMMDevice**)&pDevice.pDevice); //Transfer the ref
467 virtual Device Item(AkUInt32 in_idx) = 0; ///Gets item in_idx from the cache. Must be smaller than Count(). This function can block.
468 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.
470 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:49
DeviceCollection(IMMDeviceEnumerator *pEnumerator, EDataFlow eFlow, DWORD dwStateMask)
Definition: AkMMDevice.h:329
Definition: AkMMDevice.h:258
DeviceProperties(const DeviceProperties &other)=delete
DeviceEnumerator & operator=(const DeviceEnumerator &other)=delete
Iterator(IMMDeviceCollection *in_pDevices, UINT in_i)
Definition: AkMMDevice.h:263
DeviceProperty GetProperty(const PROPERTYKEY &key)
Definition: AkMMDevice.h:138
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:124
DeviceCollection(const DeviceCollection &other)=delete
DeviceProperties GetProperties() const
Definition: AkMMDevice.h:222
Definition: AkMMDevice.h:89
DeviceCollection & operator=(DeviceCollection &&other)
Definition: AkMMDevice.h:362
DeviceCollection(DeviceCollection &&other)
Definition: AkMMDevice.h:340
DeviceProperties & operator=(const DeviceProperties &other)=delete
Definition: AkMMDevice.h:40
Interface to access the IMMDevice cache. This avoids driver accesses.
Definition: AkMMDevice.h:464
DeviceProperty(const DeviceProperty &other)=delete
Iterator operator+(AkUInt32 inc) const
Definition: AkMMDevice.h:270
DeviceEnumerator(DeviceEnumerator &&other)
Definition: AkMMDevice.h:414
interface IMMDeviceCollection * pDevices
Definition: AkMMDevice.h:317
interface IMMDeviceEnumerator * pEnumerator
Definition: AkMMDevice.h:459
virtual AkUInt32 Count()=0
interface IMMDeviceCollection * pDevices
Definition: AkMMDevice.h:396
bool operator!=(const Iterator &in_rOp) const
!= operator</div>
Definition: AkMMDevice.h:303
DeviceProperty & operator=(const DeviceProperty &other)=delete
Definition: AkMMDevice.h:146
AkUInt32 operator-(Iterator const &rhs) const
Definition: AkMMDevice.h:277
DeviceEnumerator(const DeviceEnumerator &other)=delete
Iterator & operator++()
++ operator</div>
Definition: AkMMDevice.h:283
DeviceProperties(IMMDevice *in_pDevice)
Definition: AkMMDevice.h:98
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:297
Definition: AkMMDevice.h:401
DeviceProperty(DeviceProperty &&other)
Definition: AkMMDevice.h:56
DeviceCollection(IMMDeviceEnumerator *pEnumerator)
Definition: AkMMDevice.h:321
virtual Device FindDevice(AkUInt32 in_id)=0
For thread safety. See Lock()
DeviceEnumerator & operator=(DeviceEnumerator &&other)
Definition: AkMMDevice.h:434
Device GetDefaultDevice(ERole in_eRole)
Definition: AkMMDevice.h:450
AkForceInline AkInt32 AkWideCharToChar(const wchar_t *in_pszUnicodeString, AkUInt32 in_uiOutBufferSize, char *io_pszAnsiString)
String conversion helper.
Definition: AkPlatformFuncs.h:446
DeviceCollection & operator=(const DeviceCollection &other)=delete
Iterator & operator--()
– operator</div>
Definition: AkMMDevice.h:290
static HashParams::HashType ComputeLowerCase(const char *in_pData)
Definition: AkFNVHash.h:130
DeviceProperty & operator=(DeviceProperty &&other)
Definition: AkMMDevice.h:72
DeviceProperties(DeviceProperties &&other)
Definition: AkMMDevice.h:104
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