Classe extent (C++ AMP)
Rappresenta un vettore di valori interi N che specificano i limiti di uno spazio N-dimensionale che ha un'origine pari a 0. I valori nel vettore vengono ordinati dal più significativo al meno significativo.
Sintassi
template <int _Rank>
class extent;
Parametri
_Rango
Classificazione dell'oggetto extent
.
Requisiti
Intestazione: amp.h
Spazio dei nomi: Concurrency
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
Costruttore extent | Inizializza una nuova istanza della classe extent . |
Metodi pubblici
Nome | Descrizione |
---|---|
contains | Verifica che l'oggetto specificato extent abbia il rango specificato. |
size | Restituisce la dimensione lineare totale dell'extent (in unità di elementi). |
tegola | Produce un tiled_extent oggetto con gli extent del riquadro specificati dalle dimensioni specificate. |
Operatori pubblici
Nome | Descrizione |
---|---|
operator- | Restituisce un nuovo extent oggetto creato sottraendo gli index elementi dagli elementi corrispondenti extent . |
operatore-- | Decrementa ogni elemento dell'oggetto extent . |
operator%= | Calcola il modulo (resto) di ogni elemento nell'oggetto extent quando tale elemento è diviso per un numero. |
operator*= | Moltiplica ogni elemento dell'oggetto extent per un numero. |
operator/= | Divide ogni elemento dell'oggetto extent in base a un numero. |
extent::operator[] | Restituisce l'elemento in corrispondenza dell'indice specificato. |
operator+ | Restituisce un nuovo extent oggetto creato aggiungendo gli elementi e extent corrispondentiindex . |
operator++ | Incrementa ogni elemento dell'oggetto extent . |
operator+= | Aggiunge il numero specificato a ogni elemento dell'oggetto extent . |
operator= | Copia il contenuto di un altro extent oggetto in questo oggetto. |
operator-= | Sottrae il numero specificato da ogni elemento dell'oggetto extent . |
Costanti pubbliche
Nome | Descrizione |
---|---|
Costante rank | Ottiene la classificazione dell'oggetto extent . |
Gerarchia di ereditarietà
extent
contains
Indica se il valore di indice specificato è contenuto nell'oggetto extent
.
Sintassi
bool contains(const index<rank>& _Index) const restrict(amp,cpu);
Parametri
_Indice
Valore index
da testare.
Valore restituito
true
se il valore di indice specificato è contenuto nell'oggetto extent
; in caso contrario, false
.
extent
Inizializza una nuova istanza della classe extent
.
Sintassi
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);
Parametri
_Array
Matrice di _Rank
interi utilizzata per creare il nuovo extent
oggetto.
_I
Lunghezza dell'extent.
_I0
Lunghezza della dimensione più significativa.
_I1
Lunghezza della dimensione successiva alla dimensione più significativa.
_I2
Lunghezza della dimensione meno significativa.
_Altro
Oggetto extent
su cui si basa il nuovo extent
oggetto.
Osservazioni:
Il costruttore predefinito inizializza un extent
oggetto con un rango di tre.
Se viene utilizzata una matrice per costruire un extent
oggetto, la lunghezza della matrice deve corrispondere al rango dell'oggetto extent
.
operator%=
Calcola il modulo (resto) di ogni elemento in extent
quando tale elemento è diviso per un numero.
Sintassi
extent<_Rank>& operator%=(int _Rhs) restrict(cpu, direct3d);
Parametri
_Rhs
Numero di cui trovare il modulo.
Valore restituito
Oggetto extent
.
operator*=
Moltiplica ogni elemento nell'oggetto extent
in base al numero specificato.
Sintassi
extent<_Rank>& operator*=(int _Rhs) restrict(amp,cpu);
Parametri
_Rhs
Numero da moltiplicare.
Valore restituito
Oggetto extent
.
operator+
Restituisce un nuovo extent
oggetto creato aggiungendo gli elementi e extent
corrispondentiindex
.
Sintassi
extent<_Rank> operator+(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parametri
_Rhs
Oggetto index
contenente gli elementi da aggiungere.
Valore restituito
Nuovo oggetto extent
.
operator++
Incrementa ogni elemento dell'oggetto extent
.
Sintassi
extent<_Rank>& operator++() restrict(amp,cpu);
extent<_Rank> operator++(int)restrict(amp,cpu);
Valore restituito
Per l'operatore prefisso, l'oggetto extent
(*this
). Per l'operatore suffisso, un nuovo extent
oggetto .
operator+=
Aggiunge il numero specificato a ogni elemento dell'oggetto extent
.
Sintassi
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);
Parametri
_Rhs
Numero, indice o extent da aggiungere.
Valore restituito
L'oggetto extent
risultante.
operator-
Crea un nuovo extent
oggetto sottraendo ogni elemento nell'oggetto specificato index
dall'elemento corrispondente in questo extent
oggetto.
Sintassi
extent<_Rank> operator-(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parametri
_Rhs
Oggetto index
contenente gli elementi da sottrarre.
Valore restituito
Nuovo oggetto extent
.
operatore--
Decrementa ogni elemento nell'oggetto extent
.
Sintassi
extent<_Rank>& operator--() restrict(amp,cpu);
extent<_Rank> operator--(int)restrict(amp,cpu);
Valore restituito
Per l'operatore prefisso, l'oggetto extent
(*this
). Per l'operatore suffisso, un nuovo extent
oggetto .
operator/=
Divide ogni elemento nell'oggetto extent
in base al numero specificato.
Sintassi
extent<_Rank>& operator/=(int _Rhs) restrict(amp,cpu);
Parametri
_Rhs
Numero da dividere per.
Valore restituito
Oggetto extent
.
operator-=
Sottrae il numero specificato da ogni elemento dell'oggetto extent
.
Sintassi
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);
Parametri
_Rhs
Numero da sottrarre.
Valore restituito
L'oggetto extent
risultante.
operator=
Copia il contenuto di un altro extent
oggetto in questo oggetto.
Sintassi
extent<_Rank>& operator=(const extent<_Rank>& _Other) restrict(amp,cpu);
Parametri
_Altro
Oggetto extent
da cui copiare.
Valore restituito
Riferimento a questo extent
oggetto.
extent::operator []
Restituisce l'elemento in corrispondenza dell'indice specificato.
Sintassi
int operator[](unsigned int _Index) const restrict(amp,cpu);
int& operator[](unsigned int _Index) restrict(amp,cpu);
Parametri
_Indice
Intero compreso tra 0 e il rango meno 1.
Valore restituito
Elemento in corrispondenza dell'indice specificato.
rank
Archivia la classificazione dell'oggetto extent
.
Sintassi
static const int rank = _Rank;
size
Restituisce la dimensione lineare totale dell'oggetto extent
(in unità di elementi).
Sintassi
unsigned int size() const restrict(amp,cpu);
tile
Produce un oggetto tiled_extent con le dimensioni del riquadro specificate.
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 ;
Parametri
_Dim0
Componente più significativo dell'extent affiancato.
_Dim1
Componente successivo a più significativo dell'extent affiancato.
_Dim2
Componente meno significativo dell'extent affiancato.