extent-Klasse (C++ AMP)
Stellt einen Vektor von N-Ganzzahlwerten dar, die die Grenzen eines N-dimensionalen Raums angeben, der einen Ursprung von 0 hat. Die Werte im Vektor sind vom wichtigsten zum am wenigsten wichtigen Wert sortiert.
Syntax
template <int _Rank>
class extent;
Parameter
_Rank
Der Rang des extent
-Objekts.
Anforderungen
Header: amp.h
Namespace: Parallelität
Member
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
Extent-Konstruktor | Initialisiert eine neue Instanz der extent -Klasse. |
Öffentliche Methoden
Name | Beschreibung |
---|---|
contains | Überprüft, ob das angegebene extent -Objekt über den angegebenen Rang verfügt. |
size | Gibt die lineare Gesamtgröße des Wertebereichs zurück (in der Einheit Elemente). |
Fliese | Erzeugt ein tiled_extent -Objekt mit den Kachelwertebereichen, die durch angegebene Dimensionen festgelegt werden. |
Öffentliche Operatoren
Name | Beschreibung |
---|---|
operator- | Gibt ein neues extent -Objekt zurück, das erstellt wird, indem die index -Elemente von den entsprechenden extent -Elementen subtrahiert werden. |
Operator-- | Dekrementiert jedes Element des extent -Objekts. |
operator%= | Berechnet den Modul (Rest) jedes Elements im extent -Objekt, wenn dieses Element durch eine Zahl dividiert wird. |
operator*= | Multipliziert jedes Element des extent -Objekts mit einer Zahl. |
operator/= | Dividiert jedes Element des extent -Objekts durch eine Zahl. |
extent::operator[] | Gibt das Element am angegebenen Index zurück. |
operator+ | Gibt ein neues extent -Objekt zurück, das durch Hinzufügen der entsprechenden index - und extent -Elemente erstellt wird. |
operator++ | Inkrementiert jedes Element des extent -Objekts. |
operator+= | Fügt die angegebene Zahl jedem Element des extent -Objekts hinzu. |
operator= | Kopiert den Inhalt eines anderen extent -Objekts in dieses Objekt. |
operator-= | Subtrahiert die angegebene Anzahl von jedem Element des extent -Objekts. |
Öffentliche Konstanten
Name | Beschreibung |
---|---|
rank-Konstante | Ruft den Rang des extent -Objekts ab. |
Vererbungshierarchie
extent
contains
Gibt an, ob der angegebene Indexwert im extent
Objekt enthalten ist.
Syntax
bool contains(const index<rank>& _Index) const restrict(amp,cpu);
Parameter
_Index
Der zu testende index
-Wert.
Rückgabewert
true
wenn der angegebene Indexwert im extent
Objekt enthalten ist; andernfalls false
.
extent
Initialisiert eine neue Instanz der extent
-Klasse.
Syntax
extent() restrict(amp,cpu);
extent(const extent<_Rank>& _Other) restrict(amp,cpu);
explicit extent(int _I) restrict(amp,cpu);
extent(int _I0, int _I1) restrict(amp,cpu);
extent(int _I0, int _I1, int _I2) restrict(amp,cpu);
explicit extent(const int _Array[_Rank])restrict(amp,cpu);
Parameter
_Array
Ein Array mit ganzen _Rank
-Zahlen, mit dem das neue extent
-Objekt erstellt wird.
_I
Die Länge des Wertebereichs.
_I0
Die Länge der wichtigsten Dimension.
_I1
Die Länge der zweitwichtigsten Dimension.
_I2
Die Länge der unwichtigsten Dimension.
_Other
Ein extent
-Objekt, auf dem das neue extent
-Objekt basiert.
Hinweise
Der Standardkonstruktor initialisiert ein extent
Objekt mit einer Rangfolge von drei.
Wenn ein Array verwendet wird, um ein extent
-Objekt zu erstellen, muss die Länge des Arrays mit dem Rang des extent
-Objekts übereinstimmen.
operator%=
Berechnet den Modulus (Rest) jedes Elements, extent
wenn das Element durch eine Zahl dividiert wird.
Syntax
extent<_Rank>& operator%=(int _Rhs) restrict(cpu, direct3d);
Parameter
_Rhs
Die Zahl, deren Modulus gefunden werden soll.
Rückgabewert
Das extent
-Objekt.
operator*=
Multipliziert jedes Element im extent
Objekt mit der angegebenen Zahl.
Syntax
extent<_Rank>& operator*=(int _Rhs) restrict(amp,cpu);
Parameter
_Rhs
Die zu multiplizierende Zahl.
Rückgabewert
Das extent
-Objekt.
operator+
Gibt ein neues extent
-Objekt zurück, das durch Hinzufügen der entsprechenden index
- und extent
-Elemente erstellt wird.
Syntax
extent<_Rank> operator+(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parameter
_Rhs
Das index
-Objekt, das die hinzuzufügenden Elemente enthält.
Rückgabewert
Das neue extent
-Objekt.
operator++
Inkrementiert jedes Element des extent
-Objekts.
Syntax
extent<_Rank>& operator++() restrict(amp,cpu);
extent<_Rank> operator++(int)restrict(amp,cpu);
Rückgabewert
Für den Präfixoperator das extent
-Objekt (*this
). Für den Suffixoperator ein neues extent
-Objekt.
operator+=
Fügt die angegebene Zahl jedem Element des extent
-Objekts hinzu.
Syntax
extent<_Rank>& operator+=(const extent<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator+=(const index<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator+=(int _Rhs) restrict(amp,cpu);
Parameter
_Rhs
Die Zahl, der Index oder der Wertebereich, die bzw. der hinzugefügt werden soll.
Rückgabewert
Das resultierende extent
-Objekt.
operator-
Erstellt ein neues extent
-Objekt durch Subtrahieren der einzelnen Elemente im angegebenen index
-Objekt vom entsprechenden Element in diesem extent
-Objekt.
Syntax
extent<_Rank> operator-(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parameter
_Rhs
Das index
-Objekt, das die zu subtrahierenden Elemente enthält.
Rückgabewert
Das neue extent
-Objekt.
Operator--
Erhöht jedes Element im extent
Objekt.
Syntax
extent<_Rank>& operator--() restrict(amp,cpu);
extent<_Rank> operator--(int)restrict(amp,cpu);
Rückgabewert
Für den Präfixoperator das extent
-Objekt (*this
). Für den Suffixoperator ein neues extent
-Objekt.
operator/=
Dividiert jedes Element im extent
Objekt durch die angegebene Zahl.
Syntax
extent<_Rank>& operator/=(int _Rhs) restrict(amp,cpu);
Parameter
_Rhs
Die Zahl, durch die dividiert wird.
Rückgabewert
Das extent
-Objekt.
operator-=
Subtrahiert die angegebene Anzahl von jedem Element des extent
-Objekts.
Syntax
extent<_Rank>& operator-=(const extent<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator-=(const index<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator-=(int _Rhs) restrict(amp,cpu);
Parameter
_Rhs
Die zu subtrahierende Zahl.
Rückgabewert
Das resultierende extent
-Objekt.
operator =
Kopiert den Inhalt eines anderen extent
-Objekts in dieses Objekt.
Syntax
extent<_Rank>& operator=(const extent<_Rank>& _Other) restrict(amp,cpu);
Parameter
_Other
Das extent
-Objekt, aus dem kopiert werden soll.
Rückgabewert
Ein Verweis auf das extent
-Objekt.
extent::operator []
Gibt das Element am angegebenen Index zurück.
Syntax
int operator[](unsigned int _Index) const restrict(amp,cpu);
int& operator[](unsigned int _Index) restrict(amp,cpu);
Parameter
_Index
Eine ganze Zahl von 0 durch den Rang minus 1.
Rückgabewert
Das Element am angegebenen Index.
rank
Speichert den Rang des extent
-Objekts.
Syntax
static const int rank = _Rank;
size
Gibt die lineare Gesamtgröße des extent
Objekts (in Elementeinheiten) zurück.
Syntax
unsigned int size() const restrict(amp,cpu);
tile
Erzeugt ein tiled_extent -Objekt mit den angegebenen Kachelabmessungen.
template <int _Dim0>
tiled_extent<_Dim0> tile() const ;
template <int _Dim0, int _Dim1>
tiled_extent<_Dim0, _Dim1> tile() const ;
template <int _Dim0, int _Dim1, int _Dim2>
tiled_extent<_Dim0, _Dim1, _Dim2> tile() const ;
Parameter
_Dim0
Die wichtigste Komponente des unterteilten Wertebereichs.
_Dim1
Die zweitwichtigste Komponente des unterteilten Wertebereichs.
_Dim2
Die unwichtigste Komponente des unterteilten Wertebereichs.