> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GetExtraAxisIndexes

> GetExtraAxisIndexes

# GetExtraAxisIndexes

Obtient les index d'axe de contrôleur des axes supplémentaires du périphérique pour un type d'entrée donné.

## Syntaxe

```cpp theme={null}
HRESULT GetExtraAxisIndexes(
    GameInputKind inputKind,
    uint32_t extraAxisCount,
    uint8_t* extraAxisIndexes
);
```

### Paramètres

*inputKind*   \_In\_\
Type : GameInputKind

Type d'entrée dont les index d'axes supplémentaires sont demandés.

*extraAxisCount*   \_In\_\
Type : uint32\_t

Nombre attendu d'index d'axe pour les axes supplémentaires.
Ce nombre peut être récupéré en appelant [GetExtraAxisCount](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextraaxiscount).

*extraAxisIndexes*   \_Out\_writes\_(extraAxisCount)\_\
Type : uint8\_t\*

Pointeur vers le tableau des index d'axe.

### Valeur de retour

Type : HRESULT

Résultat de la fonction.

## Remarques

La méthode `GetExtraAxisIndexes` récupère les index d'axe de contrôleur des axes supplémentaires présents sur le périphérique pour un type d'entrée donné. Les axes supplémentaires sont des axes de contrôleur qui existent sur le périphérique physique mais qui ne font pas partie du mappage standard du type d'entrée spécifié.

Avant d'appeler cette méthode, vous devez d'abord appeler [GetExtraAxisCount](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextraaxiscount) pour déterminer le nombre d'axes supplémentaires disponibles, puis passer ce nombre comme paramètre extraAxisCount.

L'exemple de code suivant montre comment utiliser les axes supplémentaires d'une manette de jeu :

```cpp theme={null}
bool GetGamepadExtraAxisValues(
    std::vector<float>* extraAxes,
    IGameInputReading* reading) noexcept
{
    Mwrl::ComPtr<IGameInputDevice> device;
    reading->GetDevice(&device);

    uint32_t extraAxisCount = 0;
    if (FAILED(device->GetExtraAxisCount(GameInputKindGamepad, &extraAxisCount)))
    {
        return false;
    }

    std::vector<uint8_t> axisIndexes(extraAxisCount);
    extraAxes->resize(extraAxisCount);
    if (FAILED(device->GetExtraAxisIndexes(
        GameInputKindGamepad,
        extraAxisCount,
        axisIndexes.data())))
    {
        return false;
    }

    std::vector<float> axisStates(reading->GetControllerAxisCount());
    reading->GetControllerAxisState(static_cast<uint32_t>(axisStates.size()), axisStates.data());

    for (size_t i = 0; i < axisIndexes.size(); ++i)
    {
        if (axisIndexes[i] < axisStates.size())
        {
            (*extraAxes)[i] = axisStates[axisIndexes[i]];
        }
    }

    return true;
}
```

## Configuration requise

**En-tête :** GameInput.h

**Bibliothèque :** gameinput.lib

**Plateformes prises en charge :** Windows, consoles de la famille XBOX One et consoles XBOX Series

## Voir aussi

[GameInputKind](/fr/reference/input/gameinput/enums/gameinputkind)<br />
[GetExtraAxisCount](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextraaxiscount)<br />
[GetExtraButtonIndexes](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextrabuttonindexes)<br />
[IGameInputDevice](/fr/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice)

## Historique des versions

| Version | Modifications |
| - | - |
| **v3** | Introduite. |


## Related topics

- [GetExtraAxisCount](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextraaxiscount.md)
- [GetExtraButtonIndexes](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextrabuttonindexes.md)
- [IGameInputDevice](/fr/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)
- [GetExtraButtonCount](/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getextrabuttoncount.md)
- [GameInputAxisMapping](/fr/reference/input/gameinput/structs/gameinputaxismapping.md)
