Struct DeviceInfo
Used with GetDeviceInfo(Int32, out DeviceInfo) or RecordGetDeviceInfo(Int32, out DeviceInfo) to retrieve information on a device.
Namespace: System.Dynamic.ExpandoObject
Assembly: ManagedBass.dll
Syntax
public struct DeviceInfo
Remarks
When a device is disabled/disconnected, it is still retained in the device list, but the IsEnabled is set to false flag is removed from it. If the device is subsequently re-enabled, it may become available again with the same device number, or the system may add a new entry for it.
When a new device is connected, it can affect the other devices and result in the system moving them to new device entries. If an affected device is initialized, it will stop working and will need to be reinitialized using its new device number.
Platform-specific
On Windows, Driver can reveal the Type of driver being used on systems that support both VxD and WDM drivers (Windows Me/98SE). Further information can be obtained from the file via the GetFileVersionInfo function. On Vista and newer, the device's endpoint ID is given rather than its driver filename. On OSX, driver is the device's UID, and on Linux it is the ALSA device name. It is unused on other platforms. The device Type is only available on Windows (Vista and newer) and OSX. On Windows, DisplayPort devices will have HDMI rather than DisplayPort.
Depending on the Bass.UnicodeDeviceInformation config setting, Name and Driver can be in ANSI or UTF-8 form on Windows. They are always in UTF-16 form on Windows CE, and UTF-8 on other platforms.
Properties
Driver
The filename of the driver being used... null = no driver (ie. NoSoundDevice device).
On systems that can use both VxD and WDM drivers (Windows Me/98SE), this will reveal which Type of driver is being used.
Further information can be obtained from the file using the GetFileVersionInfo Win32 API function.
Declaration
public string Driver { get; }
Property Value
String
|
IsDefault
The device is the system default device.
Declaration
public bool IsDefault { get; }
Property Value
Boolean
|
IsEnabled
The device is enabled and can be used.
Declaration
public bool IsEnabled { get; }
Property Value
Boolean
|
IsInitialized
The device is already initialized.
Declaration
public bool IsInitialized { get; }
Property Value
Boolean
|