> ## 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.

# Método ILampArray::GetIndicesForPurposes

> Preenche um buffer fornecido pelo chamador com os índices de Lamp que correspondem aos LampPurposes especificados; dimensione o buffer primeiro com GetIndicesCountForPurposes.

# ILampArray::GetIndicesForPurposes

Preenche um buffer de índices de Lamp que dão suporte a um conjunto especificado de LampPurposes. Antes de chamar este método, o tamanho máximo do buffer deve ser obtido chamando [ILampArray::GetIndicesCountForPurposes](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_getindicescountforpurposes).

## Sintaxe

```cpp theme={null}
void GetIndicesForPurposes(
    LampPurposes lampPurposes,
    uint32_t lampIndicesCount,
    uint32_t * lampIndices)
```

### Parâmetros

*lampPurposes*
Tipo: [LampPurposes](/pt-BR/reference/lighting/lamparray/enums/lamppurposes)

O conjunto desejado de LampPurposes.

*lampIndicesCount*\
Tipo: uint32\_t

O tamanho do buffer a ser preenchido.

*lampIndices*  \_Out\_writes\_(lampIndicesCount)
Tipo: uint32\_t\*

O buffer de índices de Lamp. Os índices gravados no buffer são de Lamps que correspondem a todos os sinalizadores em lampPurposes.

### Valor retornado

Tipo: void

## Comentários

O código a seguir demonstra como definir uma cor para todas as Lamps de identidade visual em um ILampArray:

```cpp theme={null}
void UpdateBrandingLamps(ILampArray* lampArray)
{
    // Get the number of Branding lamps
    LampPurposes purposes = LampPurposes::Branding;
    uint32_t indicesCount = lampArray->GetIndicesCountForPurposes(purposes);

    // Allocate and populate a buffer with the indices of those Lamps
    std::vector<uint32_t> indicesBuffer(indicesCount);
    lampArray->GetIndicesForPurposes(purposes, indicesCount, indicesBuffer.data());

    // Set color for all Branding Lamps to red.
    std::vector<LampArrayColor> colorsBuffer(indicesCount);
    for (uint32_t i = 0; i < indicesCount; i++)
    {
        colorsBuffer[i] = { 0xFF /* r */, 0x0 /* g */, 0x0 /* b */, 0xFF /* a */ };
    }

    lampArray->SetColorsForIndices(indicesCount, indicesBuffer.data(), colorsBuffer.data());
}
```

## Requisitos

**Cabeçalho:** LampArray.h

**Biblioteca:** xgameplatform.lib

**Plataformas compatíveis:** consoles da família XBOX One e consoles XBOX Series

## Confira também

[Visão geral da API de iluminação](/pt-BR/build/core-features/common/lighting/gc-lighting-toc)\
[ILampArray::GetIndicesCountForPurposes](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_getindicescountforpurposes)\
[ILampArray::SetColorsForIndices](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_setcolorsforindices)\
[ILampArray](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/ilamparray)


## Related topics

- [Método ILampArray::GetIndicesCountForPurposes](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_getindicescountforpurposes.md)
- [Método ILampArray::GetLampCount](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_getlampcount.md)
- [Método ILampArray::GetLampInfo](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_getlampinfo.md)
- [Método ILampArray::SetColorsForIndices](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_setcolorsforindices.md)
- [Método ILampArray::GetLampArrayKind](/pt-BR/reference/lighting/lamparray/interfaces/ilamparray/methods/ilamparray_getlamparraykind.md)
