RawGameController Clase
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa cualquier tipo de controlador de juego.
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
- Herencia
- Atributos
- Implementaciones
Familia de dispositivos |
Windows 10 Creators Update (se introdujo en la versión 10.0.15063.0)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v4.0)
|
El siguiente fragmento de código muestra cómo recorrer en bucle la lista RawGameController.RawGameControllers y agregar cada RawGameController a un vector. Tendrás que poner un bloqueo en el vector, ya que las cosas pueden cambiar en cualquier momento (un controlador podría estar desconectado o reconectado, por ejemplo).
#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);
}
}
Las instancias de la clase RawGameController no se pueden crear directamente; en su lugar, las instancias de la clase se recuperan a través de la propiedad RawGameController.RawGameControllers que enumera todos los controladores de juego conectados o a través del evento RawGameController.RawGameControllerAdded .
Todas las entradas disponibles en rawGameController se exponen como matrices simples de botones, modificadores y ejes sin nombre. Con esta clase, puede permitir a los clientes crear asignaciones de entrada personalizadas independientemente del tipo de controlador que usen.
Deberá crear estas matrices usted mismo y, a continuación, rellenarlas mediante GetCurrentReading para determinar los estados de los botones, modificadores y ejes. Consulte la documentación de esa función para obtener más información.
Consulta Raw game controller para obtener información sobre cómo usar la clase RawGameController .
Versión de Windows | Versión del SDK | Valor agregado |
---|---|---|
1709 | 16299 | DisplayName |
1709 | 16299 | NonRoamableId |
1709 | 16299 | SimpleHapticsControllers |
Axis |
Número de ejes en el controlador de juego sin procesar. |
Button |
Número de botones en el controlador de juego sin formato. |
Display |
Nombre del controlador, proporcionado por el hardware. |
Force |
La lista de motores de fuerza de respuesta en el controlador de juego sin procesar. |
Hardware |
Identificador del producto de hardware del controlador de juego sin procesar. |
Hardware |
Identificador del proveedor de hardware del controlador de juego sin procesar. |
Headset |
Los auriculares de audio conectados al controlador de juego sin procesar. |
Is |
Obtiene un valor que indica el estado inalámbrico del controlador de juego sin procesar. |
Non |
Identificador único que identifica el controlador. Siempre que el controlador esté conectado, el identificador nunca cambiará. |
Raw |
La lista de todos los controladores de juegos sin procesar conectados. |
Simple |
Colección de objetos SimpleHapticsController que representan todos los motores de comentarios hápticos disponibles en el dispositivo. |
Switch |
Número de interruptores en el controlador de juego sin procesar. |
User |
El usuario asociado al controlador de juego sin formato. |
From |
Devuelve el controlador de juego especificado como un controlador de juego sin procesar. |
Get |
Recupera la etiqueta del botón para el botón especificado. |
Get |
Obtiene una instantánea del estado del controlador de juego sin procesar. |
Get |
Obtiene el tipo del modificador especificado en el controlador de juego sin formato. |
Try |
Obtiene información sobre el estado actual de la batería del controlador de juego sin procesar. |
Headset |
Indica cuándo se conecta un casco al controlador de juego sin procesar. |
Headset |
Indica cuándo se desconecta un casco del controlador de juego sin procesar. |
Raw |
Indica cuándo se conecta un nuevo controlador de juego sin procesar. |
Raw |
Indica cuándo se desconecta un controlador de juego sin procesar. |
User |
Indica cuándo ha cambiado el usuario asociado al controlador de juego sin procesar. |