Partilhar via


Classe de Textura

Uma textura é uma agregação de dados num accelerator_view domínio de extensão. É uma coleção de variáveis, uma para cada elemento em um domínio de extensão. Cada variável contém um valor correspondente ao tipo primitivo C++ ( unsigned int, int, float, double), um tipo escalar (norm, ou unorm), ou um tipo de vetor curto.

Sintaxe

template <typename value_type,  int _Rank>
class texture;

Parâmetros

value_type
O tipo dos elementos na textura.

_Rank
A classificação da textura.

Membros

Typedefs Públicos

Nome Descrição
scalar_type Tipos escalares.
value_type Tipos de valor.

Construtores Públicos

Nome Descrição
texture Construtor Inicializa uma nova instância da classe texture.
~texture Destructor Destrói o texture objeto.

Métodos Públicos

Nome Descrição
copy_to Fazendo uma cópia profunda, copia o objeto texture para o destino.
Dados Retorna um ponteiro da CPU para os dados brutos dessa textura.
obter Retorna o valor do elemento no índice especificado.
get_associated_accelerator_view Retorna o accelerator_view que é o destino preferencial para essa textura a ser copiada.
get_depth_pitch Devolve o número de bytes entre cada camada de profundidade numa textura de estágio 3D na CPU.
get_row_pitch Devolve o número de bytes entre cada fila numa textura de estágio 2D ou 3D na CPU.
definido Define o valor do elemento no índice especificado.

Operadores Públicos

Nome Descrição
operator() Retorna o valor do elemento especificado pelos parâmetros.
operator[] Retorna o elemento que está no índice especificado.
operador= Copia o objeto de textura especificado para este.

Constantes Públicas

Nome Descrição
Constante de Rank Obtém a classificação do texture objeto.

Membros de Dados Públicos

Nome Descrição
vista_do_acelerador_associado Obtém o accelerator_view que é o destino preferencial para essa textura a ser copiada.
depth_pitch Obtém o número de bytes entre cada camada de profundidade numa textura de encenação 3D na CPU.
distância_entre_filas Obtém o número de bytes entre cada linha em uma textura de preparo 2D ou 3D na CPU.

Hierarquia de herança

_Texture_base

texture

Requerimentos

Cabeçalho: amp_graphics.h

Espaço de nomes: Simultaneidade::gráficos

~textura

Destrói o texture objeto.

~texture() restrict(cpu);

vista_acelerador_associada

Obtém o accelerator_view que é o destino preferencial para essa textura a ser copiada.

__declspec(property(get= get_associated_accelerator_view)) Concurrency::accelerator_view associated_accelerator_view;

copiar_para

Fazendo uma cópia profunda, copia o objeto texture para o destino.

void copy_to(texture& _Dest) const;
void copy_to(writeonly_texture_view<value_type, _Rank>& _Dest) const;

Parâmetros

_Dest
O objeto para o qual copiar.

_Rank
A classificação da textura.

value_type
O tipo dos elementos na textura.

dados

Retorna um ponteiro da CPU para os dados brutos dessa textura.

void* data() restrict(cpu);

const void* data() const restrict(cpu);

Valor de retorno

Um ponteiro para os dados brutos da textura.

depth_pitch

Obtém o número de bytes entre cada camada de profundidade numa textura de encenação 3D na CPU.

__declspec(property(get= get_depth_pitch)) unsigned int depth_pitch;

obter

Retorna o valor do elemento no índice especificado.

const value_type get(const index<_Rank>& _Index) const restrict(amp);

Parâmetros

_Index
O índice do elemento.

Valor de retorno

O valor do elemento no índice especificado.

get_associated_accelerator_view

Retorna o accelerator_view, que é o destino preferido para onde esta textura deve ser copiada.

Concurrency::accelerator_view get_associated_accelerator_view() const restrict(cpu);

Valor de retorno

O accelerator_view que é o alvo preferido para essa textura a ser copiada.

get_depth_pitch

Devolve o número de bytes entre cada camada de profundidade numa textura de estágio 3D na CPU.

unsigned int get_depth_pitch() const restrict(cpu);

Valor de retorno

O número de bytes entre cada fatia de profundidade numa textura de preparação 3D na CPU.

obter_inclinação_da_linha

Devolve o número de bytes entre cada linha numa textura de estagiamento de duas dimensões, ou entre cada linha de uma camada de profundidade numa textura de estagiamento de três dimensões.

unsigned int get_row_pitch() const restrict(cpu);

Valor de retorno

O número de bytes entre cada linha numa textura de armazenamento bidimensional ou entre cada linha de uma camada de profundidade numa textura de armazenamento tridimensional.

operador()

Retorna o valor do elemento especificado pelos parâmetros.

const value_type operator() (
    const index<_Rank>& _Index) const restrict(amp);

const value_type operator() (
    int _I0) const restrict(amp);

const value_type operator() (
    int _I0,
    int _I1) const restrict(amp);

const value_type operator() (
    int _I0,
    int _I1,
    int _I2) const restrict(amp);

Parâmetros

_Index
O índice.

_I0
O componente mais significativo do índice.

_I1
O segundo componente mais significativo do índice.

_I2
O componente menos significativo do índice.

_Rank
A classificação do índice.

Valor de retorno

O valor do elemento especificado pelos parâmetros.

operador[]

Retorna o elemento que está no índice especificado.

const value_type operator[] (const index<_Rank>& _Index) const restrict(amp);

const value_type operator[] (int _I0) const restrict(amp);

Parâmetros

_Index
O índice.

_I0
O índice.

Valor de retorno

O elemento que está no índice especificado.

operador=

Copia o objeto de textura especificado para este.

texture& operator= (
    const texture& _Other);

texture& operator= (
    texture<value_type, _Rank>&& _Other);

Parâmetros

_Other
O texture objeto do qual copiar.

Valor de retorno

Uma referência a este objeto texture.

classificar

Obtém a classificação do texture objeto.

static const int rank = _Rank;

espaçamento de linha

Obtém o número de bytes entre cada linha em uma textura de preparo 2D ou 3D na CPU.

__declspec(property(get= get_row_pitch)) unsigned int row_pitch;

conjunto/configuração

Define o valor do elemento no índice especificado.

void set(
    const index<_Rank>& _Index,
    const value_type& value) restrict(amp);

Parâmetros

_Index
O índice do elemento.

_Rank
A classificação do índice.

valor
O novo valor do elemento.

textura

Inicializa uma nova instância da classe texture.

texture(const Concurrency::extent<_Rank>& _Ext) restrict(cpu);

texture(int _E0) restrict(cpu);

texture(int _E0, int _E1) restrict(cpu);

texture(int _E0, int _E1, int _E2) restrict(cpu);

texture(
    const Concurrency::extent<_Rank>& _Ext,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    int _E1,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    int _E1,
    int _E2,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

template<typename _Input_iterator>
texture(
    const Concurrency::extent<_Rank>& _Ext,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last) restrict(cpu);

template<typename _Input_iterator>
texture(
    int _E0, _Input_iterator _Src_first, _Input_iterator _Src_last) restrict(cpu);

template<typename _Input_iterator>
texture(
    int _E0,
    int _E1,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last) restrict(cpu);

template<typename _Input_iterator>
texture(
    int _E0,
    int _E1,
    int _E2,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last) restrict(cpu);

template<typename _Input_iterator>
texture(
    const Concurrency::extent<_Rank>& _Ext,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

template<typename _Input_iterator>
texture(
    int _E0,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

template<typename _Input_iterator>
texture(
    int _E0,
    int _E1,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

template<typename _Input_iterator>
texture(
    int _E0,
    int _E1,
    int _E2,
    _Input_iterator _Src_first,
    _Input_iterator _Src_last,
    const Concurrency::accelerator_view& _Av) restrict(cpu))  ;

texture(
    int _E0,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    int _E0,
    int _E1,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    int _E0,
    int _E1,
    int _E2,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    const Concurrency::extent<_Rank>& _Ext,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av)  ;

texture(
    int _E0,
    int _E1,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    int _E1,
    int _E2,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    const Concurrency::extent<_Rank>& _Ext,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    int _E0,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    int _E0,
    int _E1,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    int _E0,
    int _E1,
    int _E2,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element) restrict(cpu);

texture(
    const Concurrency::extent<_Rank>& _Ext,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av)  ;

texture(
    int _E0,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    int _E1,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    int _E0,
    int _E1,
    int _E2,
    _In_ void* _Source,
    unsigned int _Src_byte_size,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av) restrict(cpu);

texture(
    const texture& _Src,
    const Concurrency::accelerator_view& _Acc_view);

texture(
    texture&& _Other);

texture(
    const Concurrency::extent<_Rank>& _Ext,
    unsigned int _Bits_per_scalar_element,
    const Concurrency::accelerator_view& _Av);

texture(
    const texture& _Src);

Parâmetros

_Acc_view
A accelerator_view que especifica a localização da textura.

_Av
O accelerator_view que especifica a localização da textura.

_Associated_av
Um accelerator_view que especifica o destino preferencial para cópias de ou para essa textura.

_Bits_per_scalar_element
O número de bits por cada elemento escalar no tipo escalar subjacente da textura. Em geral, os valores suportados são 8, 16, 32 e 64. Se 0 for especificado, o número de bits será o mesmo que o scalar_type subjacente. 64 só é válido para texturas de base dupla.

_Ext
A extensão em cada dimensão da textura.

_E0
O componente mais significativo da textura.

_E1
O componente próximo do mais significativo da textura.

_E2
O componente menos significativo da extensão da textura.

_Input_iterator
O tipo do iterador de entrada.

_Níveis_de_Mipmap
O número de níveis de mipmap na textura subjacente. Se 0 for especificado, a textura terá a gama completa de níveis de mipmap até o menor tamanho possível para a extensão especificada.

_Rank
A classificação da extensão.

_Source
Um ponteiro para um buffer de host.

_Src
Texturizar para copiar

_Src_byte_size
O número de bytes no buffer de origem.

_Src_first
Um iterador inicial no contêiner de origem.

_Src_last
Um iterador final no contêiner de origem.

_Other
Outra fonte de dados.

_Rank
A classificação da secção.

Ver também

Namespace Concurrency::graphics