Compartir por


Texture (Clase)

Una textura es un agregado de datos en un accelerator_view del dominio de extensión. Es una colección de variables, una para cada elemento de un dominio de extensión. Cada variable contiene un valor correspondiente al tipo primitivo de C++ ( , , , ), un tipo escalar (unsigned int, o int) o un tipo de vector corto. floatdoublenormunorm

Sintaxis

template <typename value_type,  int _Rank>
class texture;

Parámetros

tipo_de_valor
Tipo de los elementos de la textura.

_Rango
Rango de la textura.

Miembros

Definiciones de tipos públicas

Nombre Descripción
scalar_type Tipos escalares.
value_type Tipos de valor.

Constructores públicos

Nombre Descripción
Constructor texture Inicializa una nueva instancia de la clase texture.
~texture Destructor Destruye el objeto texture.

Métodos públicos

Nombre Descripción
copy_to Copia el objeto texture en el destino realizando una copia en profundidad.
datos Devuelve un puntero de CPU a los datos brutos de esta textura.
Obtener Devuelve el valor del elemento en el índice especificado.
get_associated_accelerator_view Devuelve el elemento accelerator_view que es el destino preferido en el que copiar esta textura.
get_depth_pitch Devuelve el número de bytes entre cada segmento de profundidad en una textura intermedia 3D en la CPU.
get_row_pitch Devuelve el número de bytes entre cada fila en una textura de almacenamiento provisional 2D o 3D en la CPU.
ajustar Establece el valor del elemento en el índice especificado.

Operadores públicos

Nombre Descripción
operator() Devuelve el valor de elemento especificado por los parámetros.
operador [] Devuelve el elemento que se encuentra en el índice especificado.
operator= Copia el objeto texture especificado en este.

Constantes públicas

Nombre Descripción
rango Constante Obtiene la clasificación del objeto texture.

Miembros de datos públicos

Nombre Descripción
vista_acelerador_asociada Obtiene el elemento accelerator_view que es el destino preferido en el que copiar esta textura.
depth_pitch Obtiene el número de bytes entre cada segmento de profundidad en una textura intermedia 3D en la CPU.
row_pitch Obtiene el número de bytes entre cada fila de una textura de almacenamiento provisional 2D o 3D en la CPU.

Jerarquía de herencia

_Texture_base

texture

Requisitos

Encabezado: amp_graphics.h

Espacio de nombres: Concurrency::graphics

~textura

Destruye el objeto texture.

~texture() restrict(cpu);

vista_acelerador_asociado

Obtiene el elemento accelerator_view que es el destino preferido en el que copiar esta textura.

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

copy_to

Copia el objeto texture en el destino realizando una copia en profundidad.

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

Parámetros

_Dest
El objeto al que se copiará.

_Rango
Rango de la textura.

tipo_de_valor
Tipo de los elementos de la textura.

datos

Devuelve un puntero de CPU a los datos brutos de esta textura.

void* data() restrict(cpu);

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

Valor devuelto

Puntero a los datos sin procesar de la textura.

depth_pitch

Obtiene el número de bytes entre cada segmento de profundidad en una textura de almacenamiento provisional 3D en la CPU.

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

obtener

Devuelve el valor del elemento en el índice especificado.

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

Parámetros

_Índice
Índice del elemento.

Valor devuelto

Valor del elemento en el índice especificado.

get_associated_accelerator_view

Devuelve el elemento accelerator_view que es el destino preferido en el que copiar esta textura.

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

Valor devuelto

El elemento accelerator_view que es el destino preferido en el que copiar esta textura.

get_depth_pitch

Devuelve el número de bytes entre cada segmento de profundidad en una textura intermedia 3D en la CPU.

unsigned int get_depth_pitch() const restrict(cpu);

Valor devuelto

El número de bytes entre cada segmento de profundidad en una textura de almacenamiento provisional 3D en la CPU.

get_row_pitch

Devuelve el número de bytes entre cada fila de una textura intermedia bidimensional o entre cada fila de un corte de profundidad en una textura intermedia tridimensional.

unsigned int get_row_pitch() const restrict(cpu);

Valor devuelto

El número de bytes entre cada fila en una textura staging bidimensional o entre cada fila de un segmento de profundidad en una textura staging tridimensional.

operator()

Devuelve el valor de elemento especificado por los 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

_Índice
El índice.

_I0
Componente más significativo del índice.

_I1
Componente siguiente al más significativo del índice.

_I2
Componente menos significativo del índice.

_Rango
Clasificación del índice.

Valor devuelto

El valor de elemento especificado por los parámetros.

operador[]

Devuelve el elemento que se encuentra en el índice especificado.

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

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

Parámetros

_Índice
El índice.

_I0
El índice.

Valor devuelto

El elemento que se encuentra en el índice especificado.

operador =

Copia el objeto texture especificado en este.

texture& operator= (
    const texture& _Other);

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

Parámetros

_Other
El objeto texture desde el que se va a copiar.

Valor devuelto

Una referencia a este objeto texture.

rango

Obtiene la clasificación del objeto texture.

static const int rank = _Rank;

paso de fila

Obtiene el número de bytes entre cada fila de una textura de almacenamiento provisional 2D o 3D en la CPU.

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

establecer

Establece el valor del elemento en el índice especificado.

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

Parámetros

_Índice
Índice del elemento.

_Rango
Clasificación del índice.

valor
Nuevo valor del elemento.

textura

Inicializa una nueva instancia de la clase 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
El objeto accelerator_view que especifica la ubicación de la textura.

_Av
El objeto accelerator_view que especifica la ubicación de la textura.

_Associated_av
Un objeto accelerator_view que especifica el destino preferido para las copias hacia o desde esta textura.

_Bits_per_scalar_element
Número de bits por cada elemento escalar del tipo escalar subyacente de la textura. En general, el valor admitido es 8, 16, 32 y 64. Si se especifica 0, el número de bits es el mismo que el del scalar_type subyacente. 64 solo es válido para texturas de doble base.

_Ext
La extensión de cada dimensión de la textura.

_E0
Componente más significativo de la textura.

_E1
Componente siguiente al más significativo de la textura.

_E2
El componente menos significativo de la extensión de la textura.

_Input_iterator
El tipo de iterador de entrada.

_Niveles_de_mipmap
Número de niveles de mipmap en la textura subyacente. Si se especifica 0, la textura tendrá el rango completo de niveles de mipmap hasta el tamaño más pequeño posible para la extensión especificada.

_Rango
La clasificación de la extensión.

_Fuente
Puntero a un búfer de host.

_Fuente
Para copiar una textura.

_Src_byte_size
Número de bytes del buffer de origen.

_Src_first
Un iterador inicial en el contenedor fuente.

_Src_last
El iterador final en el contenedor de origen.

_Other
Otro origen de datos.

_Rango
Rango de la sección.

Consulte también

Concurrency::graphics Namespace