Bagikan melalui


RawGameController Kelas

Definisi

Mewakili semua jenis pengontrol permainan.

public ref class RawGameController sealed : IGameControllerBatteryInfo
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 262144)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class RawGameController final : IGameControllerBatteryInfo
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 262144)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class RawGameController : IGameControllerBatteryInfo
Public NotInheritable Class RawGameController
Implements IGameControllerBatteryInfo
Warisan
Object Platform::Object IInspectable RawGameController
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows 10 Creators Update (diperkenalkan dalam 10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v4.0)

Contoh

Cuplikan kode berikut menunjukkan cara mengulang daftar RawGameController.RawGameControllers dan menambahkan setiap RawGameController ke vektor. Anda harus meletakkan kunci pada vektor, karena hal-hal dapat berubah kapan saja (pengontrol mungkin terputus atau terhubung kembali, misalnya).

#include <concrt.h>
#include <winrt/Windows.Gaming.Input.h>
using namespace winrt;
using namespace Windows::Gaming::Input;
...
std::vector<RawGameController> myRawGameControllers;
concurrency::critical_section myLock{};

for (auto const& rawGameController : RawGameController::RawGameControllers())
{
    // Test whether the raw game controller is already in myRawGameControllers; if it isn't, add it.
    concurrency::critical_section::scoped_lock lock{ myLock };
    auto it{ std::find(begin(myRawGameControllers), end(myRawGameControllers), rawGameController) };

    if (it == end(myRawGameControllers))
    {
        // This code assumes that you're interested in all raw game controllers.
        myRawGameControllers.push_back(rawGameController);
    }
}

Keterangan

Instans kelas RawGameController tidak dapat dibuat secara langsung; sebagai gantinya, instans kelas diambil melalui properti RawGameController.RawGameControllers yang mencantumkan semua pengontrol game yang terhubung atau melalui peristiwa RawGameController.RawGameControllerAdded .

Semua input yang tersedia pada RawGameController diekspos sebagai array sederhana dari tombol, sakelar, dan sumbu yang tidak disebutkan namanya. Dengan menggunakan kelas ini, Anda dapat mengizinkan pelanggan untuk membuat pemetaan input kustom apa pun jenis pengontrol yang mereka gunakan.

Anda harus membuat array ini sendiri, lalu mengisinya menggunakan GetCurrentReading untuk menentukan status tombol, sakelar, dan sumbu. Lihat dokumentasi fungsi tersebut untuk informasi selengkapnya.

Lihat Pengontrol game mentah untuk informasi tentang cara menggunakan kelas RawGameController .

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
1709 16299 DisplayName
1709 16299 NonRoamableId
1709 16299 SimpleHapticsControllers

Properti

AxisCount

Jumlah sumbu pada pengontrol permainan mentah.

ButtonCount

Jumlah tombol pada pengontrol permainan mentah.

DisplayName

Nama pengontrol, disediakan oleh perangkat keras.

ForceFeedbackMotors

Daftar motor umpan balik paksa di pengontrol game mentah.

HardwareProductId

ID produk perangkat keras dari pengontrol permainan mentah.

HardwareVendorId

ID vendor perangkat keras pengontrol permainan mentah.

Headset

Headset audio yang melekat pada pengontrol game mentah.

IsWireless

Mendapatkan nilai yang menunjukkan status nirkabel pengontrol permainan mentah.

NonRoamableId

ID unik yang mengidentifikasi pengontrol. Selama pengontrol tersambung, ID tidak akan pernah berubah.

RawGameControllers

Daftar semua pengontrol permainan mentah yang terhubung.

SimpleHapticsControllers

Kumpulan objek SimpleHapticsController yang mewakili semua motor umpan balik haptik yang tersedia yang tersedia di perangkat.

SwitchCount

Jumlah sakelar pada pengontrol permainan mentah.

User

Pengguna yang terkait dengan pengontrol permainan mentah.

Metode

FromGameController(IGameController)

Mengembalikan pengontrol permainan yang diberikan sebagai pengontrol permainan mentah.

GetButtonLabel(Int32)

Mengambil label tombol untuk tombol yang ditentukan.

GetCurrentReading(Boolean[], GameControllerSwitchPosition[], Double[])

Mendapatkan rekam jepret dari status pengontrol game mentah.

GetSwitchKind(Int32)

Mendapatkan jenis sakelar yang ditentukan pada pengontrol permainan mentah.

TryGetBatteryReport()

Mendapatkan informasi tentang status baterai pengontrol permainan mentah saat ini.

Acara

HeadsetConnected

Memberi sinyal ketika headset terpasang pada pengontrol game mentah.

HeadsetDisconnected

Memberi sinyal ketika headset terputus dari pengontrol game mentah.

RawGameControllerAdded

Memberi sinyal ketika pengontrol permainan mentah baru terhubung.

RawGameControllerRemoved

Sinyal ketika pengontrol permainan mentah terputus.

UserChanged

Sinyal ketika pengguna yang terkait dengan pengontrol game mentah telah berubah.

Berlaku untuk

Lihat juga