Struct GeometryExtractor::Result

Nested Relationships

This struct is a nested type of Class GeometryExtractor.

Struct Documentation

struct Result

Parameters for interpreting data obtained from a GeometryExtractor::Request.

Public Types

enum class State

Enumeration of possible states of GeometryExtractor::Result.

Values:

enumerator PENDING

Indicates that a GeometryExtractor::Request::Info has been created but not yet submitted.

enumerator SUCCESS

Indicates that a GeometryExtractor::Request::Info has been submitted and the resource was successfully extracted.

enumerator FAILURE_UNKNOWN

Indicates that a GeometryExtractor::Request::Info has been submitted and failed for an unknown reason.

enumerator FAILURE_INVALID_REQUEST

Indicates that a GeometryExtractor::Request::Info was submitted for an invalid call.

enumerator FAILURE_UNSUPPORTED

Indicates that a GeometryExtractor::Request::Info was submitted for a pResourceInfo which does not support extraction.

enumerator FAILURE_NO_SHADER

Indicates that a GeometryExtractor::Request::Info was submitted for a draw call which does not have a specified shader stage.

enumerator FAILURE_NO_GEOMETRY

Indicates that a GeometryExtractor::Request::Info was submitted for a draw call which does not have any geometry or geometry could not be found.

enumerator FAILURE_POSITION_PARAM_NOT_FOUND

Indicates that position vertex parameter could not be found for PositionOnly request.

enumerator FAILURE_INTERNAL

Indicates that an internal error occured, indicates that GPA Framework maintenance is required.

enumerator INSUFFICIENT_BUFFER_SIZE

Indicates that BufferSize parameter too small for requested data.

Public Functions

operator bool() const

Converts this GeometryExtractor::Result to a value indicating whether or not it's valid.

Note

A valid GeometryExtractor::Result has a state of State::SUCCESS, a non zero value for dataSize, and a non null pointer for pData

Public Members

State state = {State::PENDING}

This GeometryExtractor::Result object's state.

std::vector<uint8_t> data

This GeometryExtractor::Result object's data.

uint32_t dataStride = 0

Data stride.

std::vector<api_types::VertexInputElementExtended> layout

Data layout.

api_types::PrimitiveTopology topology = api_types::GPA_PRIMITIVE_TOPOLOGY_UNKNOWN

Geometry topology.

uint64_t primitiveCount = 0

Geometry primitive count.

uint32_t controlPointCount = 0

Patch list control point count, if topology is GPA_PRIMITIVE_TOPOLOGY_PATCH_LIST.

float viewportAspect = 1.0f

First bound viewport width / height.