public int Item([NativeTypeName("UINT")] uint nDevice, [NativeTypeName("IMMDevice **")] IMMDevice **ppDevice)
 {
     return(((delegate * unmanaged <IMMDeviceCollection *, uint, IMMDevice **, int>)(lpVtbl[4]))((IMMDeviceCollection *)Unsafe.AsPointer(ref this), nDevice, ppDevice));
 }
 public int GetDefaultAudioEndpoint(EDataFlow dataFlow, ERole role, [NativeTypeName("IMMDevice **")] IMMDevice **ppEndpoint)
 {
     return(((delegate * unmanaged <IMMDeviceEnumerator *, EDataFlow, ERole, IMMDevice **, int>)(lpVtbl[4]))((IMMDeviceEnumerator *)Unsafe.AsPointer(ref this), dataFlow, role, ppEndpoint));
 }
 public int GetDevice([NativeTypeName("LPCWSTR")] ushort *pwstrId, [NativeTypeName("IMMDevice **")] IMMDevice **ppDevice)
 {
     return(((delegate * unmanaged <IMMDeviceEnumerator *, ushort *, IMMDevice **, int>)(lpVtbl[5]))((IMMDeviceEnumerator *)Unsafe.AsPointer(ref this), pwstrId, ppDevice));
 }
 public HRESULT Item(uint nDevice, IMMDevice **ppDevice)
 {
     return(((delegate * unmanaged <IMMDeviceCollection *, uint, IMMDevice **, int>)(lpVtbl[4]))((IMMDeviceCollection *)Unsafe.AsPointer(ref this), nDevice, ppDevice));
 }