Bagikan melalui


Kelas tekstur

Tekstur adalah agregat data dalam accelerator_view domain cakupan. Ini adalah kumpulan variabel, satu untuk setiap elemen dalam domain yang luas. Setiap variabel menyimpan nilai yang sesuai dengan jenis primitif C++ ( unsigned int, , int, float, double), jenis skalar (norm, atau unorm), atau jenis vektor pendek.

Sintaksis

template <typename value_type,  int _Rank>
class texture;

Parameter-parameternya

tipe_nilai
Jenis elemen dalam tekstur.

_Pangkat
Peringkat tekstur.

Members

Typedef Publik

Nama Deskripsi
scalar_type Jenis skalar.
value_type Jenis nilai.

Konstruktor Publik

Nama Deskripsi
Konstruktor tekstur Menginisialisasi instans baru dari kelas texture.
~Destructor tekstur texture Menghancurkan objek.

Metode Publik

Nama Deskripsi
copy_to Menyalin objek texture ke tujuan, dengan melakukan salinan mendalam.
data Mengembalikan pointer CPU ke data mentah dari tekstur ini.
get Mengembalikan nilai elemen pada indeks yang ditentukan.
get_associated_accelerator_view Mengembalikan accelerator_view yang merupakan target pilihan untuk tekstur ini yang akan disalin.
get_depth_pitch Mengembalikan jumlah byte di antara setiap lapisan kedalaman dalam tekstur staging 3D pada CPU.
get_row_pitch Mengembalikan jumlah byte antara setiap baris dalam tekstur penahapan 2D atau 3D pada CPU.
set Mengatur nilai elemen pada indeks yang ditentukan.

Operator Publik

Nama Deskripsi
operator() Mengembalikan nilai elemen yang ditentukan oleh parameter.
operator[] Mengembalikan elemen yang berada di indeks yang ditentukan.
operator= Menyalin objek tekstur yang ditentukan ke objek ini.

Konstanta Umum

Nama Deskripsi
Konstanta Peringkat Mendapatkan peringkat objek texture.

Anggota Data Publik

Nama Deskripsi
associated_accelerator_view Mendapatkan accelerator_view yang merupakan target pilihan untuk menyalin tekstur ini.
depth_pitch Mendapatkan jumlah byte di antara setiap iringan kedalaman dalam tekstur penahapan 3D pada CPU.
jarak_baris Mendapatkan jumlah byte di antara setiap baris dalam tekstur penahapan 2D atau 3D pada CPU.

Hierarki Pewarisan

_Texture_base

texture

Persyaratan

Header: amp_graphics.h

Namespace: Konkurensi::grafis

~tekstur

texture Menghancurkan objek.

~texture() restrict(cpu);

tampilan_percepatan_terkait

Mendapatkan accelerator_view yang merupakan target pilihan untuk menyalin tekstur ini.

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

salin_ke

Menyalin objek texture ke tujuan, dengan melakukan salinan mendalam.

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

Parameter-parameternya

_Dest
Objek yang akan disalin.

_Pangkat
Peringkat tekstur.

tipe_nilai
Jenis elemen dalam tekstur.

data

Mengembalikan pointer CPU ke data mentah dari tekstur ini.

void* data() restrict(cpu);

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

Mengembalikan Nilai

Penunjuk ke data mentah teksturnya.

depth_pitch

Mendapatkan jumlah byte di antara setiap iringan kedalaman dalam tekstur penahapan 3D pada CPU.

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

get

Mengembalikan nilai elemen pada indeks yang ditentukan.

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

Parameter-parameternya

_Indeks
Indeks elemen.

Mengembalikan Nilai

Nilai elemen pada indeks yang ditentukan.

dapatkan_tampilan_akselerator_terkait

Mengembalikan accelerator_view yang merupakan target pilihan untuk penyalinan tekstur ini.

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

Mengembalikan Nilai

accelerator_view yang merupakan target pilihan tekstur ini untuk disalin.

get_depth_pitch

Mengembalikan jumlah byte di antara setiap lapisan kedalaman dalam tekstur staging 3D pada CPU.

unsigned int get_depth_pitch() const restrict(cpu);

Mengembalikan Nilai

Jumlah byte antara setiap lapisan kedalaman dalam tekstur staging 3D pada CPU.

get_row_pitch

Mengembalikan jumlah byte di antara setiap baris dalam tekstur penahapan 2 dimensi, atau di antara setiap baris irisan kedalaman dalam tekstur penahapan 3 dimensi.

unsigned int get_row_pitch() const restrict(cpu);

Mengembalikan Nilai

Jumlah byte antara setiap baris dalam tekstur penahapan 2 dimensi, atau antara setiap baris irisan kedalaman dalam tekstur penahapan 3 dimensi.

operator()

Mengembalikan nilai elemen yang ditentukan oleh parameter.

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);

Parameter-parameternya

_Indeks
Indeks.

_I0
Komponen indeks yang paling signifikan.

_I1
Komponen kedua paling signifikan dari indeks.

_I2
Komponen indeks yang paling tidak signifikan.

_Pangkat
Peringkat indeks.

Mengembalikan Nilai

Nilai elemen yang ditentukan oleh parameter.

operator[]

Mengembalikan elemen yang berada di indeks yang ditentukan.

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

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

Parameter-parameternya

_Indeks
Indeks.

_I0
Indeks.

Mengembalikan Nilai

Elemen yang berada di indeks yang ditentukan.

operator=

Menyalin objek tekstur yang ditentukan ke objek ini.

texture& operator= (
    const texture& _Other);

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

Parameter-parameternya

_Other
Objek texture yang akan disalin.

Mengembalikan Nilai

Referensi ke objek ini texture .

pangkat

Mendapatkan peringkat objek texture.

static const int rank = _Rank;

jarak antar baris

Mendapatkan jumlah byte di antara setiap baris dalam tekstur penahapan 2D atau 3D pada CPU.

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

set

Mengatur nilai elemen pada indeks yang ditentukan.

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

Parameter-parameternya

_Indeks
Indeks elemen.

_Pangkat
Peringkat indeks.

value
Nilai baru dari elemen.

tekstur

Menginisialisasi instans baru dari kelas 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);

Parameter-parameternya

_Acc_view
accelerator_view yang menentukan lokasi tekstur.

_Av
accelerator_view yang menentukan lokasi tekstur.

_Associated_av
accelerator_view yang menentukan target pilihan penyalinan ke atau dari tekstur ini.

_Bit_per_elemen_skalar
Jumlah bit per setiap elemen skalar dalam jenis skalar yang mendasari tekstur. Secara umum, nilai yang didukung adalah 8, 16, 32, dan 64. Jika 0 ditentukan, jumlah bit akan sama dengan tipe skalar yang mendasarinya. 64 hanya berlaku untuk tekstur berbasis ganda.

_Ext
Sejauh mana dalam setiap dimensi tekstur.

_E0
Komponen tekstur yang paling signifikan.

_E1
Komponen tekstur kedua paling signifikan.

_E2
Komponen yang paling tidak signifikan dari luasan tekstur.

_Input_iterator
Jenis iterator masukan.

_Mipmap_levels
Jumlah tingkat mipmap pada tekstur dasar. Jika 0 ditentukan, tekstur akan memiliki rentang penuh tingkat mipmap hingga ukuran sekecil mungkin untuk jangkauan yang ditentukan.

_Pangkat
Pangkat sejauh ini.

_Sumber
Penunjuk ke buffer host.

_Src
Tekstur untuk disalin.

_Src_byte_size
Jumlah byte dalam buffer sumber.

_Src_first
Iterator awal pada kontainer sumber.

_Src_last
Iterator yang berakhir pada kontainer sumber.

_Other
Sumber data lainnya.

_Pangkat
Peringkat dari bagian tersebut.

Baca juga

Konkurensi::graphics Namespace