Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
abs
szorító
countbitek
create_accelerator_view
d3d_access_lock
d3d_access_try_lock
d3d_access_unlock
őrült
make_array
zaj
radián
rcp
fordítottbitek
Követelmények
fejléc: amp.h
névtér: egyidejűség
Abs
Az argumentum abszolút értékét adja vissza.
inline int abs(int _X) restrict(amp);
Paraméterek
_X
Egész számérték
Visszaadott érték
Az argumentum abszolút értékét adja vissza.
kapocs
Kiszámítja az első megadott argumentum értékét a második és a harmadik megadott argumentum által meghatározott tartományhoz szorítva.
inline float clamp(
float _X,
float _Min,
float _Max) restrict(amp);
inline int clamp(
int _X,
int _Min,
int _Max) restrict(amp);
Paraméterek
_X
A rögzítendő érték.
_Min
A befogótartomány alsó határa.
_Max
A befogótartomány felső határa.
Visszaadott érték
A _Xrögzített értéke.
countbits
Megszámolja a beállított bitek számát _X.
inline unsigned int countbits(unsigned int _X) restrict(amp);
Paraméterek
_X
Aláíratlan egész számérték
Visszaadott érték
A _Xmegadott bitjeinek számát adja vissza.
create_accelerator_view
Létrehoz egy accelerator_view objektumot egy mutatóból egy Direct3D eszközillesztőbe.
Szintaxis
accelerator_view create_accelerator_view(
IUnknown * _D3D_device,
queuing_mode _Qmode = queuing_mode_automatic);
accelerator_view create_accelerator_view(
accelerator& _Accelerator,
bool _Disable_timeout,
queuing_mode _Qmode = queuing_mode_automatic);
Paraméterek
_Accelerator
Az a gyorsító, amelyen az új accelerator_view létre kell hozni.
_D3D_device
Az egérmutató a Direct3D eszköz felületére.
_Disable_timeout
Logikai paraméter, amely meghatározza, hogy le kell-e tiltani az időtúllépést az újonnan létrehozott accelerator_view. Ez megfelel a Direct3D-eszközök létrehozásának D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT jelzőjének, és azt jelzi, hogy az operációs rendszer engedélyezi-e a 2 másodpercnél hosszabb ideig futó számítási feladatokat anélkül, hogy a Windows időtúllépés-észlelési és helyreállítási mechanizmusa alaphelyzetbe állítaná az eszközt. A jelző használata akkor ajánlott, ha időigényes feladatokat kell végrehajtania a accelerator_view.
_Qmode
Az újonnan létrehozott accelerator_view használandó queuing_mode. Ez a paraméter alapértelmezett értéke queuing_mode_automatic.
Visszaadott érték
Az átadott Direct3D eszközfelületről létrehozott accelerator_view objektum.
Megjegyzések
Ez a függvény egy új accelerator_view objektumot hoz létre egy meglévő mutatóból egy Direct3D eszközillesztőbe. Ha a függvényhívás sikeres, a paraméter hivatkozási száma a felületre irányuló AddRef hívással növekszik. Biztonságosan felszabadíthatja az objektumot, ha már nincs rá szükség a DirectX-kódban. Ha a metódushívás sikertelen, egy runtime_exception dob.
A függvény használatával létrehozott accelerator_view objektum szálbiztos. A accelerator_view objektum egyidejű használatát szinkronizálnia kell. A accelerator_view objektum és a nyers ID3D11Device felület nem szinkronizált egyidejű használata nem definiált viselkedést okoz.
A C++ AMP futtatókörnyezet részletes hibainformációkat biztosít hibakeresési módban a D3D hibakeresési réteg használatával, ha a D3D11_CREATE_DEVICE_DEBUG jelzőt használja.
d3d_access_lock
Egy accelerator_view zárolásának beszerzése a accelerator_view megosztott erőforrások D3D-műveleteinek biztonságos végrehajtása céljából. A accelerator_view és a accelerator_view társított összes C++ AMP-erőforrás belsőleg rögzíti ezt a zárolást a műveletek végrehajtásakor, és blokkolni fogja, amíg egy másik szál a D3D hozzáférési zárat tárolja. Ez a zárolás nem rekurzív: Nem definiált viselkedés a függvény meghívása egy olyan szálról, amely már tartalmazza a zárolást. A D3D hozzáférési zárat tartalmazó szálon nem definiált viselkedés a műveletek végrehajtása a accelerator_view vagy a accelerator_view társított adattárolón. Lásd még: scoped_d3d_access_lock, egy hatóköralapú D3D-hozzáférési zárolás RAII-stílusú osztálya.
void __cdecl d3d_access_lock(accelerator_view& _Av);
Paraméterek
_Av
A accelerator_view zárolni.
d3d_access_try_lock
A D3D hozzáférési zárolásának beszerzése egy accelerator_view blokkolás nélkül.
bool __cdecl d3d_access_try_lock(accelerator_view& _Av);
Paraméterek
_Av
A accelerator_view zárolni.
Visszaadott érték
igaz, ha a zárolást megszerezték, vagy hamis, ha jelenleg egy másik szál tartja.
d3d_access_unlock
Engedje fel a D3D hozzáférési zárat az adott accelerator_view. Ha a hívó szál nem tartja meg a zárolást a accelerator_view az eredmények nincsenek meghatározva.
void __cdecl d3d_access_unlock(accelerator_view& _Av);
Paraméterek
_Av
Az a accelerator_view, amelyhez a zárolást ki kell szabadítani.
firstbithigh
Lekéri az első beállított bit helyét _X, kezdve a legmagasabb sorrendű bittel, és a legalacsonyabb sorrendű bit felé halad.
inline int firstbithigh(int _X) restrict(amp);
Paraméterek
_X
Egész számérték
Visszaadott érték
Az első beállított bit helye.
firstbitlow
Lekéri az első beállított bit helyét _X, kezdve a legalacsonyabb sorrendű bittel, és a legmagasabb sorrendű bit felé halad.
inline int firstbitlow(int _X) restrict(amp);
Paraméterek
_X
Egész számérték
Visszaadott érték
Az első beállított bit helyét adja vissza.
get_buffer
Kérje le a megadott tömb alapjául szolgáló Direct3D pufferfelületet.
template<
typename value_type,
int _Rank
>
IUnknown *get_buffer(
const array<value_type, _Rank>& _Array);
Paraméterek
value_type
A tömb elemeinek típusa.
_Rank
A tömb rangja.
_Array
A Direct3D-accelerator_view azon tömbje, amelynek a mögöttes Direct3D pufferfelületét adja vissza.
Visszaadott érték
A tömb mögötti Direct3D puffernek megfelelő IUnknown interfészmutató.
get_device
Szerezze be a accelerator_view alapjául szolgáló D3D-eszközfelületet.
IUnknown* get_device(const accelerator_view Av);
Paraméterek
Av
Az a D3D accelerator_view, amelyhez a mögöttes D3D-eszközillesztőt adja vissza.
Visszaadott érték
A accelerator_view alapjául szolgáló D3D-eszköz IUnknown interfészmutatója.
imax
Határozza meg az argumentumok maximális numerikus értékét.
inline int imax(
int _X,
int _Y) restrict(amp);
Paraméterek
_X
Egész számérték
_Y
Egész számérték
Visszaadott érték
Az argumentumok maximális numerikus értékét adja vissza.
imin
Határozza meg az argumentumok minimális numerikus értékét.
inline int imin(
int _X,
int _Y) restrict(amp);
Paraméterek
_X
Egész számérték
_Y
Egész számérték
Visszaadott érték
Az argumentumok minimális numerikus értékét adja vissza.
is_timeout_disabled
Egy logikai jelzőt ad vissza, amely jelzi, hogy az időtúllépés le van-e tiltva a megadott accelerator_view. Ez megfelel a Direct3D-eszközök létrehozásának D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT jelzőjének.
bool __cdecl is_timeout_disabled(const accelerator_view& _Accelerator_view);
Paraméterek
_Accelerator_view
Az a accelerator_view, amelynél le kellkérdezni az időtúllépés letiltott beállítását.
Visszaadott érték
Logikai jelző, amely jelzi, hogy az időtúllépés le van-e tiltva a megadott accelerator_view.
őrült
Kiszámítja az első és a második megadott argumentum szorzatát, majd hozzáadja a harmadik megadott argumentumot.
inline float mad(
float _X,
float _Y,
float _Z) restrict(amp);
inline double mad(
double _X,
double _Y,
double _Z) restrict(amp);
inline int mad(
int _X,
int _Y,
int _Z) restrict(amp);
inline unsigned int mad(
unsigned int _X,
unsigned int _Y,
unsigned int _Z) restrict(amp);
Paraméterek
_X
Az első megadott argumentum.
_Y
A második megadott argumentum.
_Z
A harmadik megadott argumentum.
Visszaadott érték
A _X * _Y + _Zeredménye.
make_array
Hozzon létre egy tömböt egy Direct3D pufferfelület mutatójából.
template<
typename value_type,
int _Rank
>
array<value_type, _Rank> make_array(
const extent<_Rank>& _Extent,
const Concurrency::accelerator_view& _Rv,
IUnknown* _D3D_buffer);
Paraméterek
value_type
A létrehozandó tömb elemtípusa.
_Rank
A létrehozandó tömb rangja.
_Extent
A tömbösszesítés alakját leíró mérték.
_Rv
Egy D3D-gyorsító nézet, amelyen a tömböt létre kell hozni.
_D3D_buffer
A D3D-puffer IUnknown illesztőmutatója a tömb létrehozásához.
Visszaadott érték
A megadott Direct3D-puffer használatával létrehozott tömb.
zaj
Véletlenszerű értéket hoz létre a Perlin zaj algoritmus használatával.
inline float noise(float _X) restrict(amp);
Paraméterek
_X
Lebegőpontos érték, amelyből Perlin-zajt hozhat létre.
Visszaadott érték
A Perlin zajértékét adja vissza -1 és 1 közötti tartományban.
Radián
A _X fokról radiánra konvertálja.
inline float radians(float _X) restrict(amp);
Paraméterek
_X
Lebegőpontos érték
Visszaadott érték
Visszaadja _X fokról radiánra konvertált értéket.
Rcp
A megadott argumentum reciprokát gyors közelítéssel számítja ki.
inline float rcp(float _X) restrict(amp);
inline double rcp(double _X) restrict(amp);
Paraméterek
_X
Az az érték, amelynek kiszámításához a reciprok.
Visszaadott érték
A megadott argumentum reciprokja.
fordítottbitek
Megfordítja a bitek sorrendjét a _X.
inline unsigned int reversebits(unsigned int _X) restrict(amp);
Paraméterek
_X
Aláíratlan egész számérték
Visszaadott érték
A bitsorrend _Xvisszafelé fordított értékét adja vissza.
telít
A 0 és 1 közötti tartományon belül _X.
inline float saturate(float _X) restrict(amp);
Paraméterek
_X
Lebegőpontos érték
Visszaadott érték
A 0 és 1 közötti tartományba szorított _X adja vissza.
jel
Meghatározza a megadott argumentum előjelét.
inline int sign(int _X) restrict(amp);
Paraméterek
_X
Egész számérték
Visszaadott érték
Az argumentum jele.
smoothstep
Sima Remete interpolációt ad vissza 0 és 1 között, ha _X a tartományban van [_Min, _Max].
inline float smoothstep(
float _Min,
float _Max,
float _X) restrict(amp);
Paraméterek
_Min
Lebegőpontos érték
_Max
Lebegőpontos érték
_X
Lebegőpontos érték
Visszaadott érték
0 értéket ad vissza, ha _X kisebb, mint _Min; 1, ha _X nagyobb, mint _Max; ellenkező esetben egy 0 és 1 közötti érték, ha _X az [_Min, _Max] tartományban van.
lépés
Két értéket hasonlít össze, amelyek 0-t vagy 1-et adnak vissza attól függően, hogy melyik érték nagyobb.
inline float step(
float _Y,
float _X) restrict(amp);
Paraméterek
_Y
Lebegőpontos érték
_X
Lebegőpontos érték
Visszaadott érték
1 értéket ad vissza, ha a _X nagyobb vagy egyenlő _Y; ellenkező esetben 0.
umax
Határozza meg az argumentumok maximális numerikus értékét.
inline unsigned int umax(
unsigned int _X,
unsigned int _Y) restrict(amp);
Paraméterek
_X
Egész számérték
_Y
Egész számérték
Visszaadott érték
Az argumentumok maximális numerikus értékét adja vissza.
umin
Határozza meg az argumentumok minimális numerikus értékét.
inline unsigned int umin(
unsigned int _X,
unsigned int _Y) restrict(amp);
Paraméterek
_X
Egész számérték
_Y
Egész számérték
Visszaadott érték
Az argumentumok minimális numerikus értékét adja vissza.