Класс texture
Текстура — это агрегат данных в accelerator_view
домене экстентов. Это коллекция переменных, по одному для каждого элемента в домене экстентов. Каждая переменная содержит значение, соответствующее примитивному типу C++ ( unsigned int
, int
, , float
скалярному double
типу ( norm
или unorm
) или короткому векторному типу.
Синтаксис
template <typename value_type, int _Rank>
class texture;
Параметры
value_type
Тип элементов в текстуре.
_Rank
Ранг текстуры.
Участники
Общедоступные определения типов
Имя | Описание |
---|---|
scalar_type |
Скалярные типы. |
value_type |
Типы значений. |
Открытые конструкторы
Имя | Описание |
---|---|
Конструктор текстур | Инициализирует новый экземпляр класса texture . |
~деструктор текстуры | Уничтожает texture объект. |
Открытые методы
Имя | Описание |
---|---|
copy_to | Копирует объект в texture место назначения, выполняя глубокую копию. |
data | Возвращает указатель ЦП на необработанные данные этой текстуры. |
get | Возвращает значение элемента по указанному индексу. |
get_associated_accelerator_view | Возвращает accelerator_view, который является предпочтительным целевым объектом для копирования этой текстуры. |
get_depth_pitch | Возвращает количество байтов между каждым срезом глубины в трехмерной промежуточной текстуре на ЦП. |
get_row_pitch | Возвращает количество байтов между каждой строкой в 2D или трехмерной промежуточной текстуре на ЦП. |
set | Задает значение элемента по указанному индексу. |
Открытые операторы
Имя | Описание |
---|---|
operator() | Возвращает значение элемента, указанное параметрами. |
оператор[] | Возвращает элемент, который находится в указанном индексе. |
operator= | Копирует указанный объект текстуры в этот объект. |
Открытые константы
Имя | Описание |
---|---|
rank Constant | Возвращает ранг texture объекта. |
Открытые члены данных
Имя | Описание |
---|---|
associated_accelerator_view | Возвращает accelerator_view, который является предпочтительным целевым объектом для копирования этой текстуры. |
depth_pitch | Возвращает количество байтов между каждым срезом глубины в трехмерной промежуточной текстуре на ЦП. |
row_pitch | Возвращает количество байтов между каждой строкой в 2D или трехмерной промежуточной текстуре на ЦП. |
Иерархия наследования
_Texture_base
texture
Требования
Заголовок: amp_graphics.h
Пространство имен: параллелизм::графика
~текстура
Уничтожает texture
объект.
~texture() restrict(cpu);
associated_accelerator_view
Возвращает accelerator_view, который является предпочтительным целевым объектом для копирования этой текстуры.
__declspec(property(get= get_associated_accelerator_view)) Concurrency::accelerator_view associated_accelerator_view;
copy_to
Копирует объект в texture
место назначения, выполняя глубокую копию.
void copy_to(texture& _Dest) const;
void copy_to(writeonly_texture_view<value_type, _Rank>& _Dest) const;
Параметры
_Dest
Объект для копирования.
_Rank
Ранг текстуры.
value_type
Тип элементов в текстуре.
.
Возвращает указатель ЦП на необработанные данные этой текстуры.
void* data() restrict(cpu);
const void* data() const restrict(cpu);
Возвращаемое значение
Указатель на необработанные данные текстуры.
depth_pitch
Возвращает количество байтов между каждым срезом глубины в трехмерной промежуточной текстуре на ЦП.
__declspec(property(get= get_depth_pitch)) unsigned int depth_pitch;
get
Возвращает значение элемента по указанному индексу.
const value_type get(const index<_Rank>& _Index) const restrict(amp);
Параметры
_Index
Индекс элемента.
Возвращаемое значение
Значение элемента по указанному индексу.
get_associated_accelerator_view
Возвращает accelerator_view, который является предпочтительным целевым объектом для копирования этой текстуры.
Concurrency::accelerator_view get_associated_accelerator_view() const restrict(cpu);
Возвращаемое значение
Accelerator_view, который является предпочтительным целевым объектом для копирования этой текстуры.
get_depth_pitch
Возвращает количество байтов между каждым срезом глубины в трехмерной промежуточной текстуре на ЦП.
unsigned int get_depth_pitch() const restrict(cpu);
Возвращаемое значение
Количество байтов между каждым срезом глубины в трехмерной промежуточной текстуре на ЦП.
get_row_pitch
Возвращает количество байтов между каждой строкой в двухмерной промежуточной текстуре или между каждой строкой среза глубины в трехмерной промежуточной текстуре.
unsigned int get_row_pitch() const restrict(cpu);
Возвращаемое значение
Количество байтов между каждой строкой в двухмерной промежуточной текстуре или между каждой строкой среза глубины в трехмерной промежуточной текстуре.
operator()
Возвращает значение элемента, указанное параметрами.
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);
Параметры
_Index
Индекс.
_I0
Наиболее значимый компонент индекса.
_I1
Следующий к наиболее значимым компоненту индекса.
_I2
Наименее значимый компонент индекса.
_Rank
Ранг индекса.
Возвращаемое значение
Значение элемента, указанное параметрами.
оператор[]
Возвращает элемент, который находится в указанном индексе.
const value_type operator[] (const index<_Rank>& _Index) const restrict(amp);
const value_type operator[] (int _I0) const restrict(amp);
Параметры
_Index
Индекс.
_I0
Индекс.
Возвращаемое значение
Элемент, который находится в указанном индексе.
operator=
Копирует указанный объект текстуры в этот объект.
texture& operator= (
const texture& _Other);
texture& operator= (
texture<value_type, _Rank>&& _Other);
Параметры
_Other
Объект texture
, из который нужно скопировать.
Возвращаемое значение
Ссылка на этот texture
объект.
rank
Возвращает ранг texture
объекта.
static const int rank = _Rank;
row_pitch
Возвращает количество байтов между каждой строкой в 2D или трехмерной промежуточной текстуре на ЦП.
__declspec(property(get= get_row_pitch)) unsigned int row_pitch;
set
Задает значение элемента по указанному индексу.
void set(
const index<_Rank>& _Index,
const value_type& value) restrict(amp);
Параметры
_Index
Индекс элемента.
_Rank
Ранг индекса.
значение
Новое значение элемента.
текстура
Инициализирует новый экземпляр класса 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);
Параметры
_Acc_view
Accelerator_view, указывающий расположение текстуры.
_Av
Accelerator_view, указывающий расположение текстуры.
_Associated_av
Accelerator_view, указывающий предпочтительный целевой объект для копирования в эту текстуру или из нее.
_Bits_per_scalar_element
Количество битов для каждого скалярного элемента в базовом скалярном типе текстуры. Как правило, поддерживаемое значение: 8, 16, 32 и 64. Если задано значение 0, число битов совпадает с базовым scalar_type. Значение 64 допустимо только для двойных текстур.
_Ext
Экстент в каждом измерении текстуры.
_E0
Наиболее значимый компонент текстуры.
_E1
Следующий к наиболее значимым компоненту текстуры.
_E2
Наименее значимый компонент экстент текстуры.
_Input_iterator
Тип итератора ввода.
_Mipmap_levels
Количество уровней mipmap в базовой текстуре. Если задано значение 0, текстура будет иметь полный диапазон уровней mipmap до наименьшего возможного размера для указанной степени.
_Rank
Ранг экстента.
_Источник
Указатель на буфер узла.
_Src
Для копирования текстуры.
_Src_byte_size
Количество байтов в исходном буфере.
_Src_first
Начальный итератор в исходный контейнер.
_Src_last
Конечный итератор в исходный контейнер.
_Other
Другой источник данных.
_Rank
Ранг раздела.