ViewfinderSurfaceRequest.Result


@AutoValue
data class ViewfinderSurfaceRequest.Result


Result of providing a surface to a ViewfinderSurfaceRequest via .provideSurface.

Can be used to compare to results returned to resultListener in .provideSurface.

Summary

Constants

const Int

Provided surface could not be used by the producer.

const Int

Provided surface was never attached to the producer due to the ViewfinderSurfaceRequest being cancelled by the producer.

const Int

Surface was not attached to the producer through this invocation of .provideSurface due to the ViewfinderSurfaceRequest already being complete with a surface.

const Int

Provided surface was successfully used by the producer and eventually detached once no longer needed by the producer.

const Int

Surface was not attached to the producer through this invocation of .provideSurface due to the ViewfinderSurfaceRequest already being marked as "will not provide surface".

Public constructors

Result(code: Int, surface: Surface)

Public properties

Int

One of .RESULT_SURFACE_USED_SUCCESSFULLY, .RESULT_REQUEST_CANCELLED, .RESULT_INVALID_SURFACE, .RESULT_SURFACE_ALREADY_PROVIDED, or .RESULT_WILL_NOT_PROVIDE_SURFACE.

Surface

The Surface used to complete the ViewfinderSurfaceRequest.

Constants

RESULT_INVALID_SURFACE

const val RESULT_INVALID_SURFACE = 2: Int

Provided surface could not be used by the producer.

This is likely due to the Surface being closed prematurely or the resolution of the surface not matching the resolution specified by ViewfinderSurfaceRequest.resolution.

RESULT_REQUEST_CANCELLED

const val RESULT_REQUEST_CANCELLED = 1: Int

Provided surface was never attached to the producer due to the ViewfinderSurfaceRequest being cancelled by the producer.

It is safe to release or reuse Surface, assuming it was not previously attached to a producer via .provideSurface. If reusing the surface for a future surface request, it should be verified that the surface still matches the resolution specified by ViewfinderSurfaceRequest.resolution.

RESULT_SURFACE_ALREADY_PROVIDED

const val RESULT_SURFACE_ALREADY_PROVIDED = 3: Int

Surface was not attached to the producer through this invocation of .provideSurface due to the ViewfinderSurfaceRequest already being complete with a surface.

The ViewfinderSurfaceRequest has already been completed by a previous invocation of .provideSurface.

It is safe to release or reuse the Surface, assuming it was not previously attached to a producer via .provideSurface.

RESULT_SURFACE_USED_SUCCESSFULLY

const val RESULT_SURFACE_USED_SUCCESSFULLY = 0: Int

Provided surface was successfully used by the producer and eventually detached once no longer needed by the producer.

This result denotes that it is safe to release the Surface and any underlying resources.

For compatibility reasons, the Surface object should not be reused by future SurfaceRequests, and a new surface should be created instead.

RESULT_WILL_NOT_PROVIDE_SURFACE

const val RESULT_WILL_NOT_PROVIDE_SURFACE = 4: Int

Surface was not attached to the producer through this invocation of .provideSurface due to the ViewfinderSurfaceRequest already being marked as "will not provide surface".

The ViewfinderSurfaceRequest has already been marked as 'will not provide surface' by a previous invocation of .willNotProvideSurface.

It is safe to release or reuse the Surface, assuming it was not previously attached to a producer via .provideSurface.

Public constructors

Result

Added in 1.4.0-alpha05
Result(code: Int, surface: Surface)
Parameters
code: Int

One of .RESULT_SURFACE_USED_SUCCESSFULLY, .RESULT_REQUEST_CANCELLED, .RESULT_INVALID_SURFACE, .RESULT_SURFACE_ALREADY_PROVIDED, or .RESULT_WILL_NOT_PROVIDE_SURFACE.

surface: Surface

The Surface used to complete the ViewfinderSurfaceRequest.

Public properties

code

Added in 1.4.0-alpha05
val codeInt

One of .RESULT_SURFACE_USED_SUCCESSFULLY, .RESULT_REQUEST_CANCELLED, .RESULT_INVALID_SURFACE, .RESULT_SURFACE_ALREADY_PROVIDED, or .RESULT_WILL_NOT_PROVIDE_SURFACE.

surface

Added in 1.4.0-alpha05
val surfaceSurface

The Surface used to complete the ViewfinderSurfaceRequest.