SurfaceControl
class SurfaceControl : Parcelable
kotlin.Any | |
↳ | android.view.SurfaceControl |
Handle to an on-screen Surface managed by the system compositor. The SurfaceControl is a combination of a buffer source, and metadata about how to display the buffers. By constructing a Surface
from this SurfaceControl you can submit buffers to be composited. Using SurfaceControl.Transaction
you can manipulate various properties of how the buffer will be displayed on-screen. SurfaceControl's are arranged into a scene-graph like hierarchy, and as such any SurfaceControl may have a parent. Geometric properties like transform, crop, and Z-ordering will be inherited from the parent, as if the child were content in the parents buffer stream.
Summary
Nested classes | |
---|---|
Builder class for |
|
An atomic set of changes to a set of SurfaceControl. |
|
abstract |
Interface to handle request to |
Transaction stats given to the listener registered in |
|
Threshold values that are sent with |
Constants | |
---|---|
static Int |
Identity transform. |
static Int |
Mirror horizontally. |
static Int |
Mirror vertically. |
static Int |
Rotate 180 degrees clock-wise. |
static Int |
Rotate 270 degrees clock-wise. |
static Int |
Rotate 90 degrees clock-wise. |
Inherited constants | |
---|---|
Public methods | |
---|---|
Int | |
Boolean |
isValid() Check whether this instance points to a valid layer with the system-compositor. |
Unit |
readFromParcel(in: Parcel!) |
Unit |
release() Release the local reference to the server-side surface. |
String |
toString() |
Unit |
writeToParcel(dest: Parcel, flags: Int) |
Properties | |
---|---|
static Parcelable.Creator<SurfaceControl!> |
Constants
BUFFER_TRANSFORM_IDENTITY
static val BUFFER_TRANSFORM_IDENTITY: Int
Identity transform. These transforms that can be applied to buffers as they are displayed to a window.
Value: 0
See Also
BUFFER_TRANSFORM_MIRROR_HORIZONTAL
static val BUFFER_TRANSFORM_MIRROR_HORIZONTAL: Int
Mirror horizontally. Can be combined with BUFFER_TRANSFORM_MIRROR_VERTICAL
and BUFFER_TRANSFORM_ROTATE_90
.
Value: 1
BUFFER_TRANSFORM_MIRROR_VERTICAL
static val BUFFER_TRANSFORM_MIRROR_VERTICAL: Int
Mirror vertically. Can be combined with BUFFER_TRANSFORM_MIRROR_HORIZONTAL
and BUFFER_TRANSFORM_ROTATE_90
.
Value: 2
BUFFER_TRANSFORM_ROTATE_180
static val BUFFER_TRANSFORM_ROTATE_180: Int
Rotate 180 degrees clock-wise. Cannot be combined with other transforms.
Value: 3
BUFFER_TRANSFORM_ROTATE_270
static val BUFFER_TRANSFORM_ROTATE_270: Int
Rotate 270 degrees clock-wise. Cannot be combined with other transforms.
Value: 7
BUFFER_TRANSFORM_ROTATE_90
static val BUFFER_TRANSFORM_ROTATE_90: Int
Rotate 90 degrees clock-wise. Can be combined with BUFFER_TRANSFORM_MIRROR_HORIZONTAL
and BUFFER_TRANSFORM_MIRROR_VERTICAL
.
Value: 4
Public methods
describeContents
fun describeContents(): Int
Return | |
---|---|
Int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR |
isValid
fun isValid(): Boolean
Check whether this instance points to a valid layer with the system-compositor. For example this may be false if construction failed, or the layer was released (release
).
Return | |
---|---|
Boolean |
Whether this SurfaceControl is valid. |
release
fun release(): Unit
Release the local reference to the server-side surface. The surface may continue to exist on-screen as long as its parent continues to exist. To explicitly remove a surface from the screen use Transaction.reparent
with a null-parent. After release, isValid
will return false and other methods will throw an exception. Always call release() when you're done with a SurfaceControl.
toString
fun toString(): String
Return | |
---|---|
String |
a string representation of the object. |
writeToParcel
fun writeToParcel(
dest: Parcel,
flags: Int
): Unit
Parameters | |
---|---|
dest |
Parcel: The Parcel in which the object should be written. This value cannot be null . |
flags |
Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE . Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |