Classe extent (C++ AMP)
Representa um vetor de valores inteiros N que especificam os limites de um espaço de dimensão N que tem uma origem de zero. Os valores no vetor são ordenados do mais significativo para o menos significativo.
Sintaxe
template <int _Rank>
class extent;
Parâmetros
_Rank
A classificação do objeto extent
.
Requisitos
Cabeçalho: amp.h
Namespace: Simultaneidade
Membros
Construtores públicos
Nome | Descrição |
---|---|
Construtor extent | Inicializa uma nova instância da classe extent . |
Métodos públicos
Nome | Descrição |
---|---|
contains | Verifica se o objeto extent especificado tem a classificação especificada. |
size | Retorna o tamanho linear total da extensão (em unidades de elementos). |
tile | Produz um objeto tiled_extent com as extensões de bloco fornecidas por dimensões especificadas. |
Operadores públicos
Nome | Descrição |
---|---|
operator- | Retorna um novo objeto extent que é criado subtraindo os elementos index dos elementos extent correspondentes. |
operador-- | Decrementa cada elemento do objeto extent . |
operador%= | Calcula o módulo (restante) de cada elemento no objeto extent quando esse elemento é dividido por um número. |
operator*= | Multiplica cada elemento do objeto extent por um número. |
operator/= | Divide cada elemento do objeto extent por um número. |
extent::operator[] | Retorna o elemento que está no índice especificado. |
operator+ | Retorna um novo objeto extent criado adicionando os elementos index e extent correspondentes. |
operador++ | Incrementa cada elemento do objeto extent . |
operator+= | Adiciona o número especificado a cada elemento do objeto extent . |
operator= | Copia o conteúdo de outro objeto extent neste. |
operador-= | Subtrai o número especificado de cada elemento do objeto extent . |
Constantes públicas
Nome | Descrição |
---|---|
Constante rank | Armazena a classificação do objeto extent . |
Hierarquia de herança
extent
contains
Indica se o valor de índice especificado está contido no objeto extent
.
Sintaxe
bool contains(const index<rank>& _Index) const restrict(amp,cpu);
Parâmetros
_Index
O index
valor a ser testado.
Valor de retorno
true
se o valor de índice especificado estiver contido no objeto extent
; caso contrário, false
.
extent
Inicializa uma nova instância da classe extent
.
Sintaxe
extent() restrict(amp,cpu);
extent(const extent<_Rank>& _Other) restrict(amp,cpu);
explicit extent(int _I) restrict(amp,cpu);
extent(int _I0, int _I1) restrict(amp,cpu);
extent(int _I0, int _I1, int _I2) restrict(amp,cpu);
explicit extent(const int _Array[_Rank])restrict(amp,cpu);
Parâmetros
_Array
Uma matriz de inteiros _Rank
que é usada para criar o novo objeto extent
.
_I
O comprimento da extensão.
_I0
O comprimento da dimensão mais significativa.
_I1
O comprimento da segunda dimensão mais significativa.
_I2
O comprimento da dimensão menos significativa.
_Other
Um objeto extent
no qual o novo objeto extent
está baseado.
Comentários
O construtor padrão inicializa um objeto extent
que tem uma classificação de três.
Se uma matriz for usada para construir um objeto extent
, o comprimento da matriz deverá corresponder à classificação do objeto extent
.
operador%=
Calcula o módulo (resto) de cada elemento no objeto extent
quando esse elemento é dividido por um número.
Sintaxe
extent<_Rank>& operator%=(int _Rhs) restrict(cpu, direct3d);
Parâmetros
_Rhs
O número do qual localizar o módulo.
Valor de retorno
O objeto extent
.
operator*=
Multiplica cada elemento no objeto extent
pelo número especificado.
Sintaxe
extent<_Rank>& operator*=(int _Rhs) restrict(amp,cpu);
Parâmetros
_Rhs
O número a ser multiplicado.
Valor de retorno
O objeto extent
.
operator+
Retorna um novo objeto extent
criado adicionando os elementos index
e extent
correspondentes.
Sintaxe
extent<_Rank> operator+(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parâmetros
_Rhs
O objeto index
que contém os elementos a serem adicionados.
Valor de retorno
O novo objeto extent
.
operador++
Incrementa cada elemento do objeto extent
.
Sintaxe
extent<_Rank>& operator++() restrict(amp,cpu);
extent<_Rank> operator++(int)restrict(amp,cpu);
Valor retornado
Para o operador de prefixo, o objeto extent
(*this
). Para o operador de sufixo, um novo objeto extent
.
operator+=
Adiciona o número especificado a cada elemento do objeto extent
.
Sintaxe
extent<_Rank>& operator+=(const extent<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator+=(const index<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator+=(int _Rhs) restrict(amp,cpu);
Parâmetros
_Rhs
O número, o índice ou a extensão a ser adicionado.
Valor de retorno
O tipo do objeto extent
resultante.
operator-
Cria um novo objeto extent
subtraindo cada elemento no objeto index
especificado do elemento correspondente neste objeto extent
.
Sintaxe
extent<_Rank> operator-(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parâmetros
_Rhs
O objeto index
que contém os elementos a serem subtraídos.
Valor de retorno
O novo objeto extent
.
operador--
Decrementa cada elemento no objeto extent
.
Sintaxe
extent<_Rank>& operator--() restrict(amp,cpu);
extent<_Rank> operator--(int)restrict(amp,cpu);
Valor retornado
Para o operador de prefixo, o objeto extent
(*this
). Para o operador de sufixo, um novo objeto extent
.
operator/=
Divide cada elemento no objeto extent
pelo número especificado.
Sintaxe
extent<_Rank>& operator/=(int _Rhs) restrict(amp,cpu);
Parâmetros
_Rhs
Número pelo qual dividir.
Valor de retorno
O objeto extent
.
operador-=
Subtrai o número especificado de cada elemento do objeto extent
.
Sintaxe
extent<_Rank>& operator-=(const extent<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator-=(const index<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator-=(int _Rhs) restrict(amp,cpu);
Parâmetros
_Rhs
O número a ser subtraído.
Valor de retorno
O tipo do objeto extent
resultante.
operator=
Copia o conteúdo de outro objeto extent
neste.
Sintaxe
extent<_Rank>& operator=(const extent<_Rank>& _Other) restrict(amp,cpu);
Parâmetros
_Other
O objeto extent
do qual copiar.
Valor de retorno
Uma referência a esse objeto extent
.
extent::operator []
Retorna o elemento que está no índice especificado.
Sintaxe
int operator[](unsigned int _Index) const restrict(amp,cpu);
int& operator[](unsigned int _Index) restrict(amp,cpu);
Parâmetros
_Index
Um inteiro que vai de 0 até a classificação menos 1.
Valor de retorno
O elemento que está no índice especificado.
rank
Armazena a classificação do objeto extent
.
Sintaxe
static const int rank = _Rank;
tamanho
Retorna o tamanho linear total do objeto extent
(em unidades de elementos).
Sintaxe
unsigned int size() const restrict(amp,cpu);
bloco
Produz um objeto tiled_extent com as dimensões de bloco especificadas.
template <int _Dim0>
tiled_extent<_Dim0> tile() const ;
template <int _Dim0, int _Dim1>
tiled_extent<_Dim0, _Dim1> tile() const ;
template <int _Dim0, int _Dim1, int _Dim2>
tiled_extent<_Dim0, _Dim1, _Dim2> tile() const ;
Parâmetros
_Dim0
O componente mais significativo da extensão de lado a lado.
_Dim1
O segundo componente mais significativo da extensão de lado a lado.
_Dim2
O componente menos significativo da extensão de lado a lado.