Freigeben über


texture-Klasse

Eine Textur ist ein Datenaggregat in einem accelerator_view-Objekt in der extent-Domäne. Es ist eine Auflistung von Variablen, eine für jedes Element in einer extent-Domäne. Jede Variable enthält einen Wert, der dem C++-Grundtyp ( , unsigned intint, float, double), einem skalaren Typ ( oder unormnorm) oder einem kurzen Vektortyp entspricht.

Syntax

template <typename value_type,  int _Rank>
class texture;

Parameter

value_type
Der Typ der Elemente in der Textur.

_Rank
Der Rang der Textur.

Member

Öffentliche Typedefs

Name Beschreibung
scalar_type Skalare Typen.
value_type Werttypen.

Öffentliche Konstruktoren

Name Beschreibung
Texturkonstruktor Initialisiert eine neue Instanz der texture-Klasse.
~Textur destruktor Zerstört das texture-Objekt.

Öffentliche Methoden

Name Beschreibung
copy_to Kopiert das texture Objekt an das Ziel, indem er eine tiefe Kopie ausführt.
data Gibt einen CPU-Zeiger auf Rohdaten dieser Textur zurück.
get Gibt den Wert des Elements am angegebenen Index zurück.
get_associated_accelerator_view Gibt die accelerator_view zurück, die das bevorzugte Ziel für diese Textur ist, in die kopiert werden soll.
get_depth_pitch Gibt die Anzahl von Bytes zwischen jedem Tiefensegment in einer 3D-Stagingtextur auf der CPU zurück.
get_row_pitch Gibt die Anzahl von Bytes zwischen jeder Zeile in einer 2D- oder 3D-Stagingtextur auf der CPU zurück.
set Legt den Wert des Elements am angegebenen Index ab.

Öffentliche Operatoren

Name Beschreibung
operator() Gibt den Elementwert zurück, der von den Parametern angegeben wird.
operator[] Gibt das Element am angegebenen Index zurück.
operator= Kopiert das angegebene Texturobjekt in dieses Objekt.

Öffentliche Konstanten

Name Beschreibung
rank-Konstante Ruft den Rang des texture-Objekts ab.

Öffentliche Datenmember

Name Beschreibung
associated_accelerator_view Ruft die accelerator_view , die das bevorzugte Ziel für diese Textur ist, in die kopiert werden soll.
depth_pitch Ruft die Anzahl von Bytes zwischen jedem Tiefensegment in einer 3D-Stagingtextur auf der CPU ab.
row_pitch Ruft die Anzahl von Bytes zwischen jeder Zeile in einer 2D- oder 3D-Stagingtextur auf der CPU zurück.

Vererbungshierarchie

_Texture_base

texture

Anforderungen

Kopfzeile: amp_graphics.h

Namespace: Parallelität::graphics

~Textur

Zerstört das texture-Objekt.

~texture() restrict(cpu);

associated_accelerator_view

Ruft die accelerator_view , die das bevorzugte Ziel für diese Textur ist, in die kopiert werden soll.

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

copy_to

Kopiert das texture Objekt an das Ziel, indem er eine tiefe Kopie ausführt.

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

Parameter

_Dest
Das Objekt, in das kopiert wird.

_Rank
Der Rang der Textur.

value_type
Der Typ der Elemente in der Textur.

data

Gibt einen CPU-Zeiger auf Rohdaten dieser Textur zurück.

void* data() restrict(cpu);

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

Rückgabewert

Ein Zeiger auf die Rohdaten der Textur.

depth_pitch

Ruft die Anzahl von Bytes zwischen jedem Tiefensegment in einer 3D-Stagingtextur auf der CPU ab.

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

get

Gibt den Wert des Elements am angegebenen Index zurück.

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

Parameter

_Index
Der Index des Elements.

Rückgabewert

Der Wert des Elements am angegebenen Index.

get_associated_accelerator_view

Gibt das accelerator_view-Objekt zurück, das das gewünschte Ziel zum Kopieren dieser Textur ist.

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

Rückgabewert

Die accelerator_view , die das bevorzugte Ziel für diese Textur ist, in die kopiert werden soll.

get_depth_pitch

Gibt die Anzahl von Bytes zwischen jedem Tiefensegment in einer 3D-Stagingtextur auf der CPU zurück.

unsigned int get_depth_pitch() const restrict(cpu);

Rückgabewert

Die Anzahl von Bytes zwischen jedem Tiefensegment in einer 3D-Stagingtextur auf der CPU.

get_row_pitch

Gibt die Anzahl von Bytes zwischen jeder Zeile in einer zweidimensionalen Stagingtextur oder zwischen jeder Zeile eines Tiefensegments in einer dreidimensionalen Stagingtextur zurück.

unsigned int get_row_pitch() const restrict(cpu);

Rückgabewert

Die Anzahl von Bytes zwischen jeder Zeile in einer zweidimensionalen Stagingtextur oder zwischen jeder Zeile eines Tiefensegments in einer dreidimensionalen Stagingtextur.

Operator()

Gibt den Elementwert zurück, der von den Parametern angegeben wird.

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

_Index
Der Index.

_I0
Die wichtigste Komponente des Index.

_I1
Die zweitwichtigste Komponente des Index.

_I2
Die unwichtigste Komponente des Index.

_Rank
Der Rang des Index.

Rückgabewert

Der Elementwert, der von den Parametern angegeben wird.

operator[]

Gibt das Element am angegebenen Index zurück.

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

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

Parameter

_Index
Der Index.

_I0
Der Index.

Rückgabewert

Das Element am angegebenen Index.

operator =

Kopiert das angegebene Texturobjekt in dieses Objekt.

texture& operator= (
    const texture& _Other);

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

Parameter

_Other
Das texture-Objekt, aus dem kopiert werden soll.

Rückgabewert

Ein Verweis auf das texture-Objekt.

rank

Ruft den Rang des texture-Objekts ab.

static const int rank = _Rank;

row_pitch

Ruft die Anzahl von Bytes zwischen jeder Zeile in einer 2D- oder 3D-Stagingtextur auf der CPU zurück.

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

set

Legt den Wert des Elements am angegebenen Index ab.

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

Parameter

_Index
Der Index des Elements.

_Rank
Der Rang des Index.

value
Der neue Wert des Elements.

Textur

Initialisiert eine neue Instanz der texture-Klasse.

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

_Acc_view
Die accelerator_view , die die Position der Textur angibt.

_Av
Die accelerator_view , die die Position der Textur angibt.

_Associated_av
Ein accelerator_view-Objekt, das das bevorzugte Ziel für Kopien in oder aus dieser Textur angibt.

_Bits_per_scalar_element
Die Anzahl von Bits für jedes skalare Element im zugrunde liegenden skalaren Typ der Textur. Im Allgemeinen werden die Werte 8, 16, 32 und 64 unterstützt. Wenn 0 festgelegt ist, ist die Anzahl von Bits mit der des zugrunde liegende scalar_type-Objekts identisch. 64 ist nur für doppeltbasierte Texturen gültig.

_Extern
Der Wertebereich in jeder Dimension der Textur.

_E0
Die wichtigste Komponente der Texture.

_E1
Die zweitwichtigste Komponente der Textur.

_E2
Die unwichtigste Komponente des Wertebereichs der Textur.

_Input_iterator
Der Typ des Eingabeiterators.

_Mipmap_levels
Die Anzahl von MipMap-Ebenen in der zugrunde liegenden Textur. Wenn 0 angegeben ist, verfügt die Textur über den Bereich der MipMap-Ebenen bis hin zur kleinsten möglichen Größe für den angegebenen Wertebereich.

_Rank
Der Rang des Wertebereichs.

_Quelle
Ein Zeiger auf einen Hostpuffer.

_Src
Die zu kopierende Textur.

_Src_byte_size
Die Anzahl von Bytes im Quellpuffer.

_Src_first
Ein Anfangsiterator in den Quellcontainer.

_Src_last
Ein Endeiterator in den Quellcontainer.

_Other
Andere Datenquelle.

_Rank
Der Rang des Abschnitts.

Siehe auch

Concurrency::graphics Namespace