- Qt 5.15
- Qt 3D
- C++ Classes
- QStencilOperationArguments
- Qt 5.15.11 Reference Documentation

# QStencilOperationArguments Class

class Qt3DRender::QStencilOperationArguments

The QStencilOperationArguments class sets the actions to be taken when stencil and depth tests fail. More...

Header: | #include <QStencilOperationArguments>
qmake: | QT += 3drender
Since: | Qt 5.7
Instantiated By: | StencilOperationArguments

This class was introduced in Qt 5.7.

- List of all members, including inherited members

## Public Types

enum | FaceMode { Front, Back, FrontAndBack }
enum | Operation { Zero, Keep, Replace, Increment, Decrement, …, Invert }

## Properties

- allTestsPassOperation : Operation
- depthTestFailureOperation : Operation
- faceMode : const FaceMode
- stencilTestFailureOperation : Operation

## Public Functions

Operation | allTestsPassOperation() const
Operation | depthTestFailureOperation() const
FaceMode | faceMode() const
Operation | stencilTestFailureOperation() const

## Public Slots

void | setAllTestsPassOperation(Operation operation)
void | setDepthTestFailureOperation(Operation operation)
void | setStencilTestFailureOperation(Operation operation)

## Signals

void | allTestsPassOperationChanged(Operation stencilDepthPass)
void | depthTestFailureOperationChanged(Operation depthFail)
void | faceModeChanged(FaceMode faceMode)
void | stencilTestFailureOperationChanged(Operation stencilFail)

## Detailed Description

The Qt3DRender::QStencilOperationArguments class specifies the arguments for the stencil operations.

See also Qt3DRender::QStencilOperation.

## Member Type Documentation

### enum QStencilOperationArguments::FaceMode

This enumeration holds the values for stencil operation argument face modes

Constant | Value | Description
--- | --- | ---
`Qt3DRender::QStencilOperationArguments::Front` | `0x0404` | Arguments are applied to front-facing polygons.
`Qt3DRender::QStencilOperationArguments::Back` | `0x0405` | Arguments are applied to back-facing polygons.
`Qt3DRender::QStencilOperationArguments::FrontAndBack` | `0x0408` | Arguments are applied to both front- and back-facing polygons.

### enum QStencilOperationArguments::Operation

This enumeration holds the values for stencil operation.

Constant | Value | Description
--- | --- | ---
`Qt3DRender::QStencilOperationArguments::Zero` | `0` | Set stencil value to zero.
`Qt3DRender::QStencilOperationArguments::Keep` | `0x1E00` | Keep current stencil value.
`Qt3DRender::QStencilOperationArguments::Replace` | `0x1E01` | Replace with the masked fragment stencil value.
`Qt3DRender::QStencilOperationArguments::Increment` | `0x1E02` | Increment current value with saturation.
`Qt3DRender::QStencilOperationArguments::Decrement` | `0x1E03` | Decrement current value with saturation.
`Qt3DRender::QStencilOperationArguments::IncrementWrap` | `0x8507` | Increment current value with wrap.
`Qt3DRender::QStencilOperationArguments::DecrementWrap` | `0x8508` | Decrement current value with wrap.
`Qt3DRender::QStencilOperationArguments::Invert` | `0x150A` | Invert the current value.

## Property Documentation

### allTestsPassOperation : Operation

Holds the stencil test operation for when depth and stencil test pass. Default is StencilOperationArguments.Keep.

Access functions:

Operation | allTestsPassOperation() const
void | setAllTestsPassOperation(Operation operation)

Notifier signal:

void | allTestsPassOperationChanged(Operation stencilDepthPass)

### depthTestFailureOperation : Operation

Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is StencilOperationArguments.Keep.

Access functions:

Operation | depthTestFailureOperation() const
void | setDepthTestFailureOperation(Operation operation)

Notifier signal:

void | depthTestFailureOperationChanged(Operation depthFail)

### faceMode : const FaceMode

Holds the faces the arguments are applied to.

Access functions:

FaceMode | faceMode() const

Notifier signal:

void | faceModeChanged(FaceMode faceMode)

### stencilTestFailureOperation : Operation

Holds the stencil test operation for when the stencil test fails. Default is StencilOperationArguments.Keep.

Access functions:

Operation | stencilTestFailureOperation() const
void | setStencilTestFailureOperation(Operation operation)

Notifier signal:

void | stencilTestFailureOperationChanged(Operation stencilFail)