2011 Khronos Group
imageAtomicAdd 3G
imageAtomicAdd atomically add a value to an existing value in memory and return the original value

## Declaration

uint `imageAtomicAdd` gimage1D image int P uint data uint `imageAtomicAdd` gimage2D image ivec2 P uint data uint `imageAtomicAdd` gimage3D image ivec3 P uint data uint `imageAtomicAdd` gimage2DRect image ivec2 P uint data uint `imageAtomicAdd` gimageCube image ivec3 P uint data uint `imageAtomicAdd` gbufferImage image int P uint data uint `imageAtomicAdd` gimage1DArray image ivec2 P uint data uint `imageAtomicAdd` gimage2DArray image ivec3 P uint data uint `imageAtomicAdd` gimageCubeArray image ivec3 P uint data uint `imageAtomicAdd` gimage2DMS image ivec2 P int sample uint data uint `imageAtomicAdd` gimage2DMSArray image ivec3 P int sample uint data int `imageAtomicAdd` gimage1D image int P int data int `imageAtomicAdd` gimage2D image ivec2 P int data int `imageAtomicAdd` gimage3D image ivec3 P int data int `imageAtomicAdd` gimage2DRect image ivec2 P int data int `imageAtomicAdd` gimageCube image ivec3 P int data int `imageAtomicAdd` gbufferImage image int P int data int `imageAtomicAdd` gimage1DArray image ivec2 P int data int `imageAtomicAdd` gimage2DArray image ivec3 P int data int `imageAtomicAdd` gimageCubeArray image ivec3 P int data int `imageAtomicAdd` gimage2DMS image ivec2 P int sample int data int `imageAtomicAdd` gimage2DMSArray image ivec3 P int sample int data

## Parameters

image

  Specify the image unit into which to add data.

P

  Specify the coordinate at which to add the data.

sample

  When present, specifies the sample within the image to add into.

data

  Specifies the data to add into the image.

## Description

`imageAtomicAdd` atomically computes a new value by adding the value of data to the contents of the texel at coordinate P and sample in the image bound to uint image, stores that value into the image and returns the original value.

## Version Support

#VARTABLECOLS#
#FUNCTABLEHEADER#
imageAtomicAdd#newin42#

## See Also

imageLoad, imageStore, imageAtomicMin, imageAtomicMax, imageAtomicAnd, imageAtomicOr, imageAtomicXor, imageAtomicExchange, imageAtomicCompSwap

## Copyright

Copyright 2011 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.