tracing_perfetto_sdk_schema

Struct ShellTransition

Source
pub struct ShellTransition {
Show 17 fields pub id: Option<i32>, pub create_time_ns: Option<i64>, pub send_time_ns: Option<i64>, pub dispatch_time_ns: Option<i64>, pub merge_time_ns: Option<i64>, pub merge_request_time_ns: Option<i64>, pub shell_abort_time_ns: Option<i64>, pub wm_abort_time_ns: Option<i64>, pub finish_time_ns: Option<i64>, pub start_transaction_id: Option<u64>, pub finish_transaction_id: Option<u64>, pub handler: Option<i32>, pub type: Option<i32>, pub targets: Vec<Target>, pub merge_target: Option<i32>, pub flags: Option<i32>, pub starting_window_remove_time_ns: Option<i64>,
}
Expand description

ShellTransition messages record information about the shell transitions in the system. This is used to track the animations that are created and execute through the shell transition system.

Fields§

§id: Option<i32>

The unique identifier of the transition.

§create_time_ns: Option<i64>

The time the transition was created on the WM side (using SystemClock.elapsedRealtimeNanos())

§send_time_ns: Option<i64>

The time the transition was sent from the WM side to shell (using SystemClock.elapsedRealtimeNanos())

§dispatch_time_ns: Option<i64>

The time the transition was dispatched by shell to execute (using SystemClock.elapsedRealtimeNanos())

§merge_time_ns: Option<i64>

If the transition merge was accepted by the transition handler, this contains the time the transition was merged into transition with id merge_target. (using SystemClock.elapsedRealtimeNanos())

§merge_request_time_ns: Option<i64>

The time shell proposed the transition should be merged to the transition handler into transition with id merge_target. (using SystemClock.elapsedRealtimeNanos()).

§shell_abort_time_ns: Option<i64>

If the transition was aborted on the shell side, this is the time that occurred. (using SystemClock.elapsedRealtimeNanos())

§wm_abort_time_ns: Option<i64>

If the transition was aborted on the wm side, this is the time that occurred. (using SystemClock.elapsedRealtimeNanos())

§finish_time_ns: Option<i64>

The time WM considers the transition to be complete. (using SystemClock.elapsedRealtimeNanos())

§start_transaction_id: Option<u64>

The id of the transaction that WM proposed to use as the starting transaction. It contains all the layer changes required to setup the transition and should be executed right at the start of the transition by the transition handler.

§finish_transaction_id: Option<u64>

The if of the transaction that WM proposed to use as the finish transaction. It contains all the layer changes required to set the final state of the transition.

§handler: Option<i32>

The id of the handler that executed the transition. A HandlerMappings message in the trace will contain the mapping of id to a string representation of the handler.

§type: Option<i32>

The transition type of this transition (e.g. TO_FRONT, OPEN, CLOSE).

§targets: Vec<Target>

The list of targets that are part of this transition.

§merge_target: Option<i32>

The id of the transition we have requested to merge or have merged this transition into.

§flags: Option<i32>

The flags set on this transition.

§starting_window_remove_time_ns: Option<i64>

The time the starting window was removed. Tracked because this can happen after the transition finishes, but the app may not yet be visible until the starting window is removed. So in a sense the transition is not finished until the starting window is removed. (b/284302118) (using SystemClock.elapsedRealtimeNanos())

Implementations§

Source§

impl ShellTransition

Source

pub fn id(&self) -> i32

Returns the value of id, or the default value if id is unset.

Source

pub fn create_time_ns(&self) -> i64

Returns the value of create_time_ns, or the default value if create_time_ns is unset.

Source

pub fn send_time_ns(&self) -> i64

Returns the value of send_time_ns, or the default value if send_time_ns is unset.

Source

pub fn dispatch_time_ns(&self) -> i64

Returns the value of dispatch_time_ns, or the default value if dispatch_time_ns is unset.

Source

pub fn merge_time_ns(&self) -> i64

Returns the value of merge_time_ns, or the default value if merge_time_ns is unset.

Source

pub fn merge_request_time_ns(&self) -> i64

Returns the value of merge_request_time_ns, or the default value if merge_request_time_ns is unset.

Source

pub fn shell_abort_time_ns(&self) -> i64

Returns the value of shell_abort_time_ns, or the default value if shell_abort_time_ns is unset.

Source

pub fn wm_abort_time_ns(&self) -> i64

Returns the value of wm_abort_time_ns, or the default value if wm_abort_time_ns is unset.

Source

pub fn finish_time_ns(&self) -> i64

Returns the value of finish_time_ns, or the default value if finish_time_ns is unset.

Source

pub fn start_transaction_id(&self) -> u64

Returns the value of start_transaction_id, or the default value if start_transaction_id is unset.

Source

pub fn finish_transaction_id(&self) -> u64

Returns the value of finish_transaction_id, or the default value if finish_transaction_id is unset.

Source

pub fn handler(&self) -> i32

Returns the value of handler, or the default value if handler is unset.

Source

pub fn type(&self) -> i32

Returns the value of type, or the default value if type is unset.

Source

pub fn merge_target(&self) -> i32

Returns the value of merge_target, or the default value if merge_target is unset.

Source

pub fn flags(&self) -> i32

Returns the value of flags, or the default value if flags is unset.

Source

pub fn starting_window_remove_time_ns(&self) -> i64

Returns the value of starting_window_remove_time_ns, or the default value if starting_window_remove_time_ns is unset.

Trait Implementations§

Source§

impl Clone for ShellTransition

Source§

fn clone(&self) -> ShellTransition

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ShellTransition

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ShellTransition

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Message for ShellTransition

Source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
Source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
Source§

fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut, Self: Sized,

Encodes the message to a buffer. Read more
Source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
Source§

fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut, Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
Source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
Source§

fn decode<B>(buf: B) -> Result<Self, DecodeError>
where B: Buf, Self: Default,

Decodes an instance of the message from a buffer. Read more
Source§

fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
where B: Buf, Self: Default,

Decodes a length-delimited instance of the message from the buffer.
Source§

fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf, Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
Source§

fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf, Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
Source§

impl PartialEq for ShellTransition

Source§

fn eq(&self, other: &ShellTransition) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ShellTransition

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.