CaptureRequestWrappers


public static class CaptureRequestWrappers


Helper utilities for constructing and wrapping CaptureRequestWrapper instances.

Summary

Public fields

static @NonNull CaptureRequestWrappers

Public methods

static final @NonNull CaptureRequestWrapper
wrap(
    @NonNull CaptureRequest captureRequest,
    @NonNull Map<@NonNull Metadata.Key<@NonNull ?>, Object> metadata
)

Wraps a native CaptureRequest and optional custom metadata into a CaptureRequestWrapper.

Public fields

INSTANCE

Added in 1.7.0-rc01
public static @NonNull CaptureRequestWrappers INSTANCE

Public methods

wrap

public static final @NonNull CaptureRequestWrapper wrap(
    @NonNull CaptureRequest captureRequest,
    @NonNull Map<@NonNull Metadata.Key<@NonNull ?>, Object> metadata
)

Wraps a native CaptureRequest and optional custom metadata into a CaptureRequestWrapper.

import androidx.camera.common.CaptureRequestWrapper
import androidx.camera.common.CaptureRequestWrappers
import androidx.camera.common.Metadata

// Wrap a native CaptureRequest into a CaptureRequestWrapper.
val requestWrapper: CaptureRequestWrapper = CaptureRequestWrappers.wrap(captureRequest)

// Query native Camera2 CaptureRequest keys:
val aeMode = requestWrapper[CaptureRequest.CONTROL_AE_MODE]

// Or attach custom library/application metadata to the request:
val customKey = Metadata.Key<String>("com.example.custom_request_tag")
val requestWithMetadata =
    CaptureRequestWrappers.wrap(
        captureRequest,
        metadata = mapOf(customKey to "sample_tag_value"),
    )
val customTagValue = requestWithMetadata[customKey]
Parameters
@NonNull CaptureRequest captureRequest

the native CaptureRequest to wrap.

@NonNull Map<@NonNull Metadata.Key<@NonNull ?>, Object> metadata

optional map of custom Metadata.Key values to attach to the wrapper.