imageAtomicExchange - atomically store supplied data into memory and return the original value from
Contents
Copyright
Copyright © 2011-2014 Khronos Group
[FIXME: source] 11/18/2024 IMAGEATOMICEXCHANGE(3G)
Declaration
uintimageAtomicExchange(gimage1Dimage,intP,uintdata);uintimageAtomicExchange(gimage2Dimage,ivec2P,uintdata);uintimageAtomicExchange(gimage3Dimage,ivec3P,uintdata);uintimageAtomicExchange(gimage2DRectimage,ivec2P,uintdata);uintimageAtomicExchange(gimageCubeimage,ivec3P,uintdata);uintimageAtomicExchange(gbufferImageimage,intP,uintdata);uintimageAtomicExchange(gimage1DArrayimage,ivec2P,uintdata);uintimageAtomicExchange(gimage2DArrayimage,ivec3P,uintdata);uintimageAtomicExchange(gimageCubeArrayimage,ivec3P,uintdata);uintimageAtomicExchange(gimage2DMSimage,ivec2P,intsample,uintdata);uintimageAtomicExchange(gimage2DMSArrayimage,ivec3P,intsample,uintdata);intimageAtomicExchange(gimage1Dimage,intP,intdata);intimageAtomicExchange(gimage2Dimage,ivec2P,intdata);intimageAtomicExchange(gimage3Dimage,ivec3P,intdata);intimageAtomicExchange(gimage2DRectimage,ivec2P,intdata);intimageAtomicExchange(gimageCubeimage,ivec3P,intdata);intimageAtomicExchange(gbufferImageimage,intP,intdata);intimageAtomicExchange(gimage1DArrayimage,ivec2P,intdata);intimageAtomicExchange(gimage2DArrayimage,ivec3P,intdata);intimageAtomicExchange(gimageCubeArrayimage,ivec3P,intdata);intimageAtomicExchange(gimage2DMSimage,ivec2P,intsample,intdata);intimageAtomicExchange(gimage2DMSArrayimage,ivec3P,intsample,intdata);intimageAtomicExchange(gimage1Dimage,intP,floatdata);intimageAtomicExchange(gimage2Dimage,ivec2P,floatdata);intimageAtomicExchange(gimage3Dimage,ivec3P,floatdata);intimageAtomicExchange(gimage2DRectimage,ivec2P,floatdata);intimageAtomicExchange(gimageCubeimage,ivec3P,floatdata);intimageAtomicExchange(gbufferImageimage,intP,floatdata);intimageAtomicExchange(gimage1DArrayimage,ivec2P,floatdata);intimageAtomicExchange(gimage2DArrayimage,ivec3P,floatdata);intimageAtomicExchange(gimageCubeArrayimage,ivec3P,floatdata);intimageAtomicExchange(gimage2DMSimage,ivec2P,intsample,floatdata);intimageAtomicExchange(gimage2DMSArrayimage,ivec3P,intsample,floatdata);
Description
imageAtomicExchange atomically stores the value of data into the texel at coordinate P and sample in the
image bound to unit image, and returns the original value of the texel.
Name
imageAtomicExchange - atomically store supplied data into memory and return the original value from
memory
Parameters
image
Specify the image unit into which to store data.
P
Specify the coordinate at which to store the data.
sample
When present, specifies the sample within the image to store into.
data
Specifies the data to exchange with that stored in the image.
See Also
imageLoad(), imageStore(), imageAtomicAdd(), imageAtomicMin(), imageAtomicMax(), imageAtomicXor(),
imageAtomicOr(), imageAtomicAnd(), imageAtomicCompSwap()
Version Support
┌─────────────────────┬───────────────────────────────────────────────────────────────────────────────────┐
│ │ OpenGLShadingLanguageVersion │
├─────────────────────┼──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┤
│ Function │ 1.10 │ 1.20 │ 1.30 │ 1.40 │ 1.50 │ 3.30 │ 4.00 │ 4.10 │ 4.20 │ 4.30 │ 4.40 │ 4.50 │
│ Name │ │ │ │ │ │ │ │ │ │ │ │ │
├─────────────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
│ imageAtomicExchange │ - │ - │ - │ - │ - │ - │ - │ - │ ✔ │ ✔ │ ✔ │ ✔ │
│ (uint │ │ │ │ │ │ │ │ │ │ │ │ │
│ and int │ │ │ │ │ │ │ │ │ │ │ │ │
│ data) │ │ │ │ │ │ │ │ │ │ │ │ │
├─────────────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
│ imageAtomicExchange │ - │ - │ - │ - │ - │ - │ - │ - │ - │ - │ - │ ✔ │
│ (float data) │ │ │ │ │ │ │ │ │ │ │ │ │
└─────────────────────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘
