pub enum RegistryRequest {
RegisterProvider {
provider: ClientEnd<ProviderMarker>,
pid: u64,
name: String,
control_handle: RegistryControlHandle,
},
RegisterProviderSynchronously {
provider: ClientEnd<ProviderMarker>,
pid: u64,
name: String,
responder: RegistryRegisterProviderSynchronouslyResponder,
},
RegisterV2 {
provider: ClientEnd<ProviderV2Marker>,
pid: u64,
name: String,
control_handle: RegistryControlHandle,
},
RegisterV2Synchronously {
provider: ClientEnd<ProviderV2Marker>,
pid: u64,
name: String,
responder: RegistryRegisterV2SynchronouslyResponder,
},
#[non_exhaustive] _UnknownMethod {
ordinal: u64,
control_handle: RegistryControlHandle,
method_type: MethodType,
},
}Expand description
The service which trace providers use to register themselves with the tracing system. Note that one property of this interface is that once registration is made the provider can drop this connection.
Variants§
RegisterProvider
Registers the trace provider.
Note: Registration is asynchronous, it’s only at some point after this
returns that the provider is actually registered.
To unregister, simply close the Provider pipe.
pid is the process id of the provider, name is the name of the
provider. Both of these are used in logging and diagnostic messages.
§Deprecation
Use “RegisterV2” instead to use the FIDL-based coordination protocol.
RegisterProviderSynchronously
Registers the trace provider synchronously. The call doesn’t return
until the provider is registered.
On return s is ZX_OK if registration was successful.
started is true if tracing has already started, which is a hint to
the provider to wait for the Start() message before continuing if it
wishes to not drop trace records before Start() is received.
To unregister, simply close the Provider pipe.
pid is the process id of the provider, name is the name of the
provider. Both of these are used in logging and diagnostic messages.
§Deprecation
Use “RegisterV2Synchronously” instead to use the FIDL-based coordination protocol.
Fields
provider: ClientEnd<ProviderMarker>RegisterV2
Registers the trace provider using the V2 protocol.
Note: Registration is asynchronous, it’s only at some point after this returns that the provider is actually registered.
To unregister, close the provider connection.
RegisterV2Synchronously
Registers the trace provider synchronously using the V2 protocol.
The call doesn’t return until the provider is registered. Most callers should use RegisterV2 unless they need to synchronize with they tracing system to ensure that specific events are captured.
To unregister, close the provider connection.
#[non_exhaustive]_UnknownMethod
An interaction was received which does not match any known method.
Fields
This variant is marked as non-exhaustive
control_handle: RegistryControlHandlemethod_type: MethodTypeImplementations§
Source§impl RegistryRequest
impl RegistryRequest
pub fn into_register_provider( self, ) -> Option<(ClientEnd<ProviderMarker>, u64, String, RegistryControlHandle)>
pub fn into_register_provider_synchronously( self, ) -> Option<(ClientEnd<ProviderMarker>, u64, String, RegistryRegisterProviderSynchronouslyResponder)>
pub fn into_register_v2( self, ) -> Option<(ClientEnd<ProviderV2Marker>, u64, String, RegistryControlHandle)>
pub fn into_register_v2_synchronously( self, ) -> Option<(ClientEnd<ProviderV2Marker>, u64, String, RegistryRegisterV2SynchronouslyResponder)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL