다음을 통해 공유


LegacyGipGameControllerProvider.IsInterfaceSupported(Guid) 메서드

정의

지정된 GIP(게임 입력 프로토콜) 인터페이스 GUID가 컨트롤러에서 지원되는지 여부를 쿼리합니다.

public:
 virtual bool IsInterfaceSupported(Platform::Guid interfaceId) = IsInterfaceSupported;
bool IsInterfaceSupported(winrt::guid const& interfaceId);
public bool IsInterfaceSupported(Guid interfaceId);
function isInterfaceSupported(interfaceId)
Public Function IsInterfaceSupported (interfaceId As Guid) As Boolean

매개 변수

interfaceId
Guid

Platform::Guid

winrt::guid

검사 인터페이스 guid입니다.

반환

Boolean

bool

True이면 인터페이스 GUID가 지원됩니다. 그렇지 않으면 false입니다.

예제

public void EnumerateControllerProperties()
{
    foreach (Gamepad gamepad in Gamepad.Gamepads)
    {
        // Create the provider
        LegacyGipGameControllerProvider legacyGipGameControllerProvider =
            LegacyGipGameControllerProvider.FromGameController(gamepad);
        if (legacyGipGameControllerProvider == null)
        {
            // Not every gamepad is a legacy GIP game controller, continue enumerating
            continue;
        }

        // Check properties
        GameControllerBatteryChargingState chargeState =
            legacyGipGameControllerProvider.BatteryChargingState;
        GameControllerBatteryKind batteryKind =
            legacyGipGameControllerProvider.BatteryKind;
        GameControllerBatteryLevel batteryLevel =
            legacyGipGameControllerProvider.BatteryLevel;
        bool isOldFirmwareCorrupted =
            legacyGipGameControllerProvider.IsFirmwareCorrupted;
        bool isNewFirmwareCorrupted =
            legacyGipGameControllerProvider.GetDeviceFirmwareCorruptionState()
            != GameControllerFirmwareCorruptReason.NotCorrupt;
        bool isSynthetic = legacyGipGameControllerProvider.IsSyntheticDevice;
        byte[] extendedDeviceInfo = legacyGipGameControllerProvider.GetExtendedDeviceInfo();

        // Check for a particular GIP interface
        bool supportsSomeCustomInterface =
            legacyGipGameControllerProvider.IsInterfaceSupported(
                new Guid(
                    0xaaaaaaaa, 0xbbbb, 0xcccc, 0xe, 0xf, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6));

        IReadOnlyList<string> preferredTypes =
            legacyGipGameControllerProvider.PreferredTypes;
        bool isGamepad = preferredTypes.Contains("Windows.Xbox.Input.Gamepad");
        bool isHeadset = preferredTypes.Contains("Windows.Xbox.Input.Headset");

        // Change the LED to half brightness
        legacyGipGameControllerProvider.SetHomeLedIntensity(50);
    }
}

적용 대상