SurfaceControl
public
final
class
SurfaceControl
extends Object
implements
Parcelable
java.lang.Object | |
↳ | 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 | |
---|---|
class |
SurfaceControl.Builder
Builder class for |
class |
SurfaceControl.Transaction
An atomic set of changes to a set of SurfaceControl. |
interface |
SurfaceControl.TransactionCommittedListener
Interface to handle request to
|
class |
SurfaceControl.TransactionStats
Transaction stats given to the listener registered in
|
class |
SurfaceControl.TrustedPresentationThresholds
This class was deprecated
in API level 35.
Use |
Constants | |
---|---|
int |
BUFFER_TRANSFORM_IDENTITY
Identity transform. |
int |
BUFFER_TRANSFORM_MIRROR_HORIZONTAL
Mirror horizontally. |
int |
BUFFER_TRANSFORM_MIRROR_VERTICAL
Mirror vertically. |
int |
BUFFER_TRANSFORM_ROTATE_180
Rotate 180 degrees clock-wise. |
int |
BUFFER_TRANSFORM_ROTATE_270
Rotate 270 degrees clock-wise. |
int |
BUFFER_TRANSFORM_ROTATE_90
Rotate 90 degrees clock-wise. |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<SurfaceControl> |
CREATOR
|
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
boolean
|
isValid()
Check whether this instance points to a valid layer with the system-compositor. |
void
|
readFromParcel(Parcel in)
|
void
|
release()
Release the local reference to the server-side surface. |
String
|
toString()
Returns a string representation of the object. |
void
|
writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Constants
BUFFER_TRANSFORM_IDENTITY
public static final int BUFFER_TRANSFORM_IDENTITY
Identity transform. These transforms that can be applied to buffers as they are displayed to a window.
Constant Value: 0 (0x00000000)
BUFFER_TRANSFORM_MIRROR_HORIZONTAL
public static final int BUFFER_TRANSFORM_MIRROR_HORIZONTAL
Mirror horizontally. Can be combined with BUFFER_TRANSFORM_MIRROR_VERTICAL
and BUFFER_TRANSFORM_ROTATE_90
.
Constant Value: 1 (0x00000001)
BUFFER_TRANSFORM_MIRROR_VERTICAL
public static final int BUFFER_TRANSFORM_MIRROR_VERTICAL
Mirror vertically. Can be combined with BUFFER_TRANSFORM_MIRROR_HORIZONTAL
and BUFFER_TRANSFORM_ROTATE_90
.
Constant Value: 2 (0x00000002)
BUFFER_TRANSFORM_ROTATE_180
public static final int BUFFER_TRANSFORM_ROTATE_180
Rotate 180 degrees clock-wise. Cannot be combined with other transforms.
Constant Value: 3 (0x00000003)
BUFFER_TRANSFORM_ROTATE_270
public static final int BUFFER_TRANSFORM_ROTATE_270
Rotate 270 degrees clock-wise. Cannot be combined with other transforms.
Constant Value: 7 (0x00000007)
BUFFER_TRANSFORM_ROTATE_90
public static final int BUFFER_TRANSFORM_ROTATE_90
Rotate 90 degrees clock-wise. Can be combined with BUFFER_TRANSFORM_MIRROR_HORIZONTAL
and BUFFER_TRANSFORM_MIRROR_VERTICAL
.
Constant Value: 4 (0x00000004)
Fields
Public methods
describeContents
public int describeContents ()
Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of writeToParcel(android.os.Parcel, int)
,
the return value of this method must include the
CONTENTS_FILE_DESCRIPTOR
bit.
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled
by this Parcelable object instance.
Value is either 0 or CONTENTS_FILE_DESCRIPTOR |
isValid
public boolean isValid ()
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()
).
Returns | |
---|---|
boolean |
Whether this SurfaceControl is valid. |
release
public void release ()
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
public String toString ()
Returns a string representation of the object.
Returns | |
---|---|
String |
a string representation of the object. |
writeToParcel
public void writeToParcel (Parcel dest, int flags)
Flatten this object in to a Parcel.
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.PARCELABLE_WRITE_RETURN_VALUE .
Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-06-18 UTC.