extent – třída (C++ AMP)
Představuje vektor celočíselné hodnoty N, které určují hranice Ndimenzionálního prostoru, který má původ 0. Hodnoty v vektoru jsou seřazené od nejvýznamnějších po nejméně významné.
Syntaxe
template <int _Rank>
class extent;
Parametry
_Hodnost
Pořadí objektu extent
.
Požadavky
Záhlaví: amp.h
Obor názvů: Souběžnost
Členové
Veřejné konstruktory
Název | Popis |
---|---|
extent – konstruktor | Inicializuje novou instanci extent třídy. |
Veřejné metody
Název | Popis |
---|---|
obsahuje | Ověřuje, že zadaný extent objekt má zadané pořadí. |
velikost | Vrátí celkovou lineární velikost rozsahu (v jednotkách prvků). |
dlaždice | tiled_extent Vytvoří objekt s rozsahy dlaždic zadanými dimenzemi. |
Veřejné operátory
Název | Popis |
---|---|
operátor- | Vrátí nový extent objekt, který je vytvořen odečtením index prvků od odpovídajících extent prvků. |
operátor-- | Dekrementuje každý prvek objektu extent . |
operator%= | Vypočítá moduly (zbytek) každého prvku v objektu extent , pokud je tento prvek rozdělen číslem. |
operator*= | Vynásobí každý prvek extent objektu číslem. |
operator/= | Vydělí každý prvek extent objektu číslem. |
extent::operator[] | Vrátí prvek, který je v zadaném indexu. |
operator+ | Vrátí nový extent objekt vytvořený přidáním odpovídajících index a extent elementů. |
operator++ | Zvýší každý prvek objektu extent . |
operator+= | Přidá zadané číslo ke každému prvku objektu extent . |
operator= | Zkopíruje obsah jiného extent objektu do tohoto objektu. |
operator-= | Odečte zadané číslo od každého prvku objektu extent . |
Veřejné konstanty
Název | Popis |
---|---|
rank – konstanta | Získá pořadí objektu extent . |
Hierarchie dědičnosti
extent
obsahuje
Určuje, zda je zadaná hodnota indexu obsažena v objektu extent
.
Syntaxe
bool contains(const index<rank>& _Index) const restrict(amp,cpu);
Parametry
_Index
Hodnota index
, která se má testovat.
Návratová hodnota
true
pokud je zadaná hodnota indexu obsažena v objektu extent
; jinak , false
.
rozsah
Inicializuje novou instanci extent
třídy.
Syntaxe
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);
Parametry
_Pole
Pole celých _Rank
čísel, která slouží k vytvoření nového extent
objektu.
_Já
Délka rozsahu.
_I0
Délka nejvýznamnější dimenze.
_I1
Délka rozměru vedle nejvýznamnější dimenze.
_I2
Délka nejméně významné dimenze.
_Jiný
Objekt extent
, na kterém je nový extent
objekt založen.
Poznámky
Výchozí konstruktor inicializuje extent
objekt, který má pořadí tří.
Pokud je pole použito k vytvoření objektu extent
, délka pole se musí shodovat s pořadím objektu extent
.
operator%=
Vypočítá moduly (zbytek) každého prvku v prvku, extent
když je tento prvek rozdělen číslem.
Syntaxe
extent<_Rank>& operator%=(int _Rhs) restrict(cpu, direct3d);
Parametry
_Rhs
Číslo k nalezení modulu.
Návratová hodnota
Objekt extent
operator*=
Vynásobí každý prvek v objektu extent
zadaným číslem.
Syntaxe
extent<_Rank>& operator*=(int _Rhs) restrict(amp,cpu);
Parametry
_Rhs
Číslo, které se má násobit.
Návratová hodnota
Objekt extent
operator+
Vrátí nový extent
objekt vytvořený přidáním odpovídajících index
prvků a extent
prvků.
Syntaxe
extent<_Rank> operator+(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parametry
_Rhs
Objekt index
, který obsahuje prvky, které chcete přidat.
Návratová hodnota
Nový objekt extent
operator++
Zvýší každý prvek objektu extent
.
Syntaxe
extent<_Rank>& operator++() restrict(amp,cpu);
extent<_Rank> operator++(int)restrict(amp,cpu);
Návratová hodnota
Pro operátor předpony extent
objekt (*this
). Pro operátor přípony nový extent
objekt.
operator+=
Přidá zadané číslo ke každému prvku objektu extent
.
Syntaxe
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);
Parametry
_Rhs
Číslo, index nebo rozsah, které chcete přidat.
Návratová hodnota
Výsledný extent
objekt.
operátor-
Vytvoří nový extent
objekt odečtením každého prvku v zadaném index
objektu z odpovídajícího prvku v tomto extent
objektu.
Syntaxe
extent<_Rank> operator-(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parametry
_Rhs
Objekt index
obsahující prvky, které se mají odečíst.
Návratová hodnota
Nový objekt extent
operátor--
Dekrementuje každý prvek v objektu extent
.
Syntaxe
extent<_Rank>& operator--() restrict(amp,cpu);
extent<_Rank> operator--(int)restrict(amp,cpu);
Návratová hodnota
Pro operátor předpony extent
objekt (*this
). Pro operátor přípony nový extent
objekt.
operator/=
Vydělí každý prvek v objektu extent
zadaným číslem.
Syntaxe
extent<_Rank>& operator/=(int _Rhs) restrict(amp,cpu);
Parametry
_Rhs
Číslo, které se má dělit.
Návratová hodnota
Objekt extent
operator-=
Odečte zadané číslo od každého prvku objektu extent
.
Syntaxe
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);
Parametry
_Rhs
Číslo, které se má odečíst.
Návratová hodnota
Výsledný extent
objekt.
operator=
Zkopíruje obsah jiného extent
objektu do tohoto objektu.
Syntaxe
extent<_Rank>& operator=(const extent<_Rank>& _Other) restrict(amp,cpu);
Parametry
_Jiný
Objekt extent
, ze který chcete kopírovat.
Návratová hodnota
Odkaz na tento extent
objekt.
extent::operator []
Vrátí prvek, který je v zadaném indexu.
Syntaxe
int operator[](unsigned int _Index) const restrict(amp,cpu);
int& operator[](unsigned int _Index) restrict(amp,cpu);
Parametry
_Index
Celé číslo od 0 do pořadí minus 1.
Návratová hodnota
Element, který je v zadaném indexu.
hodnost
Uloží pořadí objektu extent
.
Syntaxe
static const int rank = _Rank;
size
Vrátí celkovou lineární velikost objektu extent
(v jednotkách prvků).
Syntaxe
unsigned int size() const restrict(amp,cpu);
tile (obkladač)
Vytvoří tiled_extent objekt se zadanými rozměry dlaždice.
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 ;
Parametry
_Dim0
Nejvýznamnější komponenta rozsahu dlaždic.
_Dim1
Nejdůležitější komponenta rozsahu dlaždic.
_Dim2
Nejméně významná součást dlaždice rozsahu.