public
final
class
WindowContentFrameStats
extends FrameStats
implements
Parcelable
java.lang.Object | ||
↳ | android.view.FrameStats | |
↳ | android.view.WindowContentFrameStats |
This class contains window content frame statistics. For example, a window content
is rendred in frames when a view is scrolled. The frame statistics are a snapshot
for the time interval from getStartTimeNano()
to getEndTimeNano()
.
The key idea is that in order to provide a smooth user experience an application
has to draw a frame at a specific time interval obtained by calling getRefreshPeriodNano()
. If the application does not render a frame every refresh
period the user will see irregular UI transitions.
An application posts a frame for presentation by synchronously rendering its contents
in a buffer which is then posted or posting a buffer to which the application is
asychronously rendering the content via GL. After the frame is posted and rendered
(potentially asynchronosly) it is presented to the user. The time a frame was posted
can be obtained via getFramePostedTimeNano(int)
, the time a frame content
was rendered and ready for dsiplay (GL case) via getFrameReadyTimeNano(int)
,
and the time a frame was presented on the screen via getFramePresentedTimeNano(int)
.
Inherited constants |
---|
From
class
android.view.FrameStats
|
From
interface
android.os.Parcelable
|
Fields | |
---|---|
public
static
final
Creator<WindowContentFrameStats> |
CREATOR
|
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
long
|
getFramePostedTimeNano(int index)
Get the time a frame at a given index was posted by the producer (e.g. |
long
|
getFrameReadyTimeNano(int index)
Get the time a frame at a given index was ready for presentation. |
String
|
toString()
Returns a string representation of the object. |
void
|
writeToParcel(Parcel parcel, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
From
class
android.view.FrameStats
| |
From
class
java.lang.Object
| |
From
interface
android.os.Parcelable
|
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(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. |
long getFramePostedTimeNano (int index)
Get the time a frame at a given index was posted by the producer (e.g. the application). It is either explicitly set or defaulted to the time when the render buffer was posted.
Note: A frame can be posted and still it contents being rendered
asynchronously in GL. To get the time the frame content was completely rendered and
ready to display call getFrameReadyTimeNano(int)
.
Parameters | |
---|---|
index |
int :
The frame index. |
Returns | |
---|---|
long |
The posted time in nanoseconds. |
long getFrameReadyTimeNano (int index)
Get the time a frame at a given index was ready for presentation.
Note: A frame can be posted and still it contents being rendered asynchronously in GL. In such a case this is the time when the frame contents were completely rendered.
Parameters | |
---|---|
index |
int :
The frame index. |
Returns | |
---|---|
long |
The ready time in nanoseconds or UNDEFINED_TIME_NANO
if the frame is not ready yet.
|
String toString ()
Returns a string representation of the object. In general, the
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel parcel, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
parcel |
Parcel :
The Parcel in which the object should be written. |
flags |
int :
Additional flags about how the object should be written.
May be 0 or PARCELABLE_WRITE_RETURN_VALUE .
|