'\" t .\" Title: imageAtomicCompSwap .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: 01/03/2018 .\" Manual: [FIXME: manual] .\" Source: [FIXME: source] .\" Language: English .\" .TH "IMAGEATOMICCOMPSWAP" "3G" "01/03/2018" "[FIXME: source]" "[FIXME: manual]" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" imageAtomicCompSwap \- atomically compares supplied data with that in memory and conditionally stores it to memory .SH "DECLARATION" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage1D\ " "image" ", int\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage2D\ " "image" ", ivec2\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage3D\ " "image" ", ivec3\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage2DRect\ " "image" ", ivec2\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimageCube\ " "image" ", ivec3\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gbufferImage\ " "image" ", int\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage1DArray\ " "image" ", ivec2\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage2DArray\ " "image" ", ivec3\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimageCubeArray\ " "image" ", ivec3\ " "P" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage2DMS\ " "image" ", ivec2\ " "P" ", int\ " "sample" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'uint\ imageAtomicCompSwap('u .BI "uint imageAtomicCompSwap(gimage2DMSArray\ " "image" ", ivec3\ " "P" ", int\ " "sample" ", uint\ " "compare" ", uint\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage1D\ " "image" ", int\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage2D\ " "image" ", ivec2\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage3D\ " "image" ", ivec3\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage2DRect\ " "image" ", ivec2\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimageCube\ " "image" ", ivec3\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gbufferImage\ " "image" ", int\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage1DArray\ " "image" ", ivec2\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage2DArray\ " "image" ", ivec3\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimageCubeArray\ " "image" ", ivec3\ " "P" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage2DMS\ " "image" ", ivec2\ " "P" ", int\ " "sample" ", int\ " "compare" ", int\ " "data" ");" .HP \w'int\ imageAtomicCompSwap('u .BI "int imageAtomicCompSwap(gimage2DMSArray\ " "image" ", ivec3\ " "P" ", int\ " "sample" ", int\ " "compare" ", int\ " "data" ");" .SH "PARAMETERS" .PP \fIimage\fR .RS 4 Specify the image unit into which to compare and conditionally store \fIdata\fR\&. .RE .PP \fIP\fR .RS 4 Specify the coordinate at which to compare and conditionally store the data\&. .RE .PP \fIsample\fR .RS 4 When present, specifies the sample within the image to compare and conditionally store into\&. .RE .PP \fIcompare\fR .RS 4 Specifies the value to compare with the content of the image\&. .RE .PP \fIdata\fR .RS 4 Specifies the value to store in the image if \fIcompare\fR is equal to the existing image content\&. .RE .SH "DESCRIPTION" .PP \fBimageAtomicCompSwap\fR atomically compares the value of \fIcompare\fR with that of the texel at coordinate \fIP\fR and \fIsample\fR (for multisampled forms) in the image bound to uint \fIimage\fR\&. If the values are equal, \fIdata\fR is stored into the texel, otherwise it is discarded\&. It returns the original value of the texel regardless of the result of the comparison operation\&. .SH "VERSION SUPPORT" .TS allbox tab(:); lB cB s s s s s s s s s s s lB cB cB cB cB cB cB cB cB cB cB cB cB. T{ T}:T{ \fBOpenGL Shading Language Version\fR T} T{ \fBFunction Name\fR T}:T{ \fB1\&.10\fR T}:T{ \fB1\&.20\fR T}:T{ \fB1\&.30\fR T}:T{ \fB1\&.40\fR T}:T{ \fB1\&.50\fR T}:T{ \fB3\&.30\fR T}:T{ \fB4\&.00\fR T}:T{ \fB4\&.10\fR T}:T{ \fB4\&.20\fR T}:T{ \fB4\&.30\fR T}:T{ \fB4\&.40\fR T}:T{ \fB4\&.50\fR T} .T& l c c c c c c c c c c c c. T{ imageAtomicCompSwap T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T} .TE .sp 1 .SH "SEE ALSO" .PP \fBimageLoad\fR(), \fBimageStore\fR(), \fBimageAtomicAdd\fR(), \fBimageAtomicMin\fR(), \fBimageAtomicMax\fR(), \fBimageAtomicXor\fR(), \fBimageAtomicOr\fR(), \fBimageAtomicAnd\fR(), \fBimageAtomicCompSwap\fR() .SH "COPYRIGHT" .PP Copyright \(co 2011\-2014 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\&. \m[blue]\fBhttp://opencontent\&.org/openpub/\fR\m[]\&. .SH "COPYRIGHT" .br Copyright \(co 2011-2014 Khronos Group .br