pub struct AeronDriverNativeResourceAgent { /* private fields */ }Implementations§
Source§impl AeronDriverNativeResourceAgent
impl AeronDriverNativeResourceAgent
pub fn new( native_resource_agent_proxy: AeronDriverNativeResourceAgentProxy, context: &AeronDriverContext, name_resolver: aeron_name_resolver_t, log_buffers_queue: AeronDeque, ) -> Result<Self, AeronCError>
Sourcepub fn new_zeroed_on_heap() -> Self
pub fn new_zeroed_on_heap() -> Self
creates zeroed struct where the underlying c struct is on the heap
Sourcepub fn new_zeroed_on_stack() -> Self
pub fn new_zeroed_on_stack() -> Self
creates zeroed struct where the underlying c struct is on the stack (Use with care)
pub fn native_resource_agent_proxy(&self) -> AeronDriverNativeResourceAgentProxy
pub fn context(&self) -> AeronDriverContext
pub fn name_resolver(&self) -> aeron_name_resolver_t
pub fn log_buffers_queue(&self) -> AeronDeque
pub fn init(&self, context: &AeronDriverContext) -> Result<i32, AeronCError>
pub fn do_work(clientd: *mut c_void) -> Result<i32, AeronCError>
pub fn on_start(state: *mut c_void, role_name: &CStr)
pub fn on_close(clientd: *mut c_void)
pub fn on_resolve_address(&self, cmd: &AeronDriverNativeResourceAgentProxyCmd)
pub fn on_parse_udp_channel(&self, cmd: &AeronDriverNativeResourceAgentProxyCmd)
pub fn on_free_log_buffer(&self, cmd: &AeronDriverNativeResourceAgentProxyCmd)
pub fn on_map_log_buffer(&self, cmd: &AeronDriverNativeResourceAgentProxyCmd)
pub fn get_inner(&self) -> *mut aeron_driver_native_resource_agent_t
Sourcepub unsafe fn get_inner_mut(&self) -> &mut aeron_driver_native_resource_agent_t
pub unsafe fn get_inner_mut(&self) -> &mut aeron_driver_native_resource_agent_t
Mutable access to the underlying C struct, minted from &self: nothing
prevents two live &mut at once, so the caller must ensure exclusive
access for the lifetime of the returned reference.
§Safety
No other reference (& or &mut) to the underlying struct may be
alive while the returned &mut is in use.
pub fn get_inner_ref(&self) -> &aeron_driver_native_resource_agent_t
Source§impl AeronDriverNativeResourceAgent
impl AeronDriverNativeResourceAgent
Sourcepub fn clone_struct(&self) -> Self
pub fn clone_struct(&self) -> Self
Regular clone just increases the reference count of underlying count.
clone_struct shallow copies the content of the underlying struct on heap.
NOTE: if the struct has references to other structs these will not be copied
Must be only used on structs which has no init/clean up methods. So its dangerous to use with Aeron/AeronContext/AeronPublication/AeronSubscription More intended for AeronArchiveRecordingDescriptor (note strings will not work as its a shallow copy)
Trait Implementations§
Source§impl Clone for AeronDriverNativeResourceAgent
impl Clone for AeronDriverNativeResourceAgent
Source§fn clone(&self) -> AeronDriverNativeResourceAgent
fn clone(&self) -> AeronDriverNativeResourceAgent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Default for AeronDriverNativeResourceAgent
This will create an instance where the struct is zeroed, use with care
impl Default for AeronDriverNativeResourceAgent
This will create an instance where the struct is zeroed, use with care