pub struct BufferConfig {
    pub size_kb: Option<u32>,
    pub fill_policy: Option<i32>,
    pub transfer_on_clone: Option<bool>,
    pub clear_before_clone: Option<bool>,
}

Fields§

§size_kb: Option<u32>§fill_policy: Option<i32>§transfer_on_clone: Option<bool>

When true the buffer is moved (rather than copied) onto the cloned session, and an empty buffer of the same size is allocated in the source tracing session. This feature will likely get deprecated in the future. It been introduced mainly to support the surfaceflinger snapshot dump for bugreports, where SF can dumps O(400MB) into the bugreport trace. In that case we don’t want to retain another in-memory copy of the buffer.

§clear_before_clone: Option<bool>

Used in conjuction with transfer_on_clone. When true the buffer is cleared before issuing the Flush(reason=kTraceClone). This is to ensure that if the data source took too long to write the data in a previous clone-related flush, we don’t end up with a mixture of leftovers from the previous write and new data.

Implementations§

source§

impl BufferConfig

source

pub fn size_kb(&self) -> u32

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

source

pub fn fill_policy(&self) -> FillPolicy

Returns the enum value of fill_policy, or the default if the field is unset or set to an invalid enum value.

source

pub fn set_fill_policy(&mut self, value: FillPolicy)

Sets fill_policy to the provided enum value.

source

pub fn transfer_on_clone(&self) -> bool

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

source

pub fn clear_before_clone(&self) -> bool

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

Trait Implementations§

source§

impl Clone for BufferConfig

source§

fn clone(&self) -> BufferConfig

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 BufferConfig

source§

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

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

impl Default for BufferConfig

source§

fn default() -> Self

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

impl Message for BufferConfig

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 BufferConfig

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for BufferConfig

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§

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

🔬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,

§

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>,

§

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>,

§

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.