pub struct AeronCountersManager { /* private fields */ }Implementations§
Source§impl AeronCountersManager
impl AeronCountersManager
pub fn new( values: *mut u8, metadata: &mut [u8], metadata_length: usize, max_counter_id: i32, id_high_water_mark: i32, free_list: &mut i32, free_list_index: i32, free_list_length: usize, cached_clock: &AeronClockCache, free_to_reuse_timeout_ms: i64, ) -> 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 values(&self) -> *mut u8
pub fn metadata(&self) -> &mut [u8] ⓘ
pub fn values_length(&self) -> usize
pub fn metadata_length(&self) -> usize
pub fn max_counter_id(&self) -> i32
pub fn id_high_water_mark(&self) -> i32
pub fn free_list(&self) -> &mut i32
pub fn free_list_index(&self) -> i32
pub fn free_list_length(&self) -> usize
pub fn cached_clock(&self) -> AeronClockCache
pub fn free_to_reuse_timeout_ms(&self) -> i64
pub fn init( &self, metadata_buffer: &mut [u8], values_buffer: &mut [u8], cached_clock: &AeronClockCache, free_to_reuse_timeout_ms: i64, ) -> Result<i32, AeronCError>
pub fn allocate(&self, type_id: i32, key: &[u8], label: &str) -> i32
pub fn counter_registration_id(&self, counter_id: i32, registration_id: i64)
pub fn counter_owner_id(&self, counter_id: i32, owner_id: i64)
pub fn counter_reference_id(&self, counter_id: i32, reference_id: i64)
pub fn update_label(&self, counter_id: i32, label_length: usize, label: &CStr)
pub fn append_to_label(&self, counter_id: i32, length: usize, value: &CStr)
pub fn next_counter_id(&self) -> i32
pub fn free(&self, counter_id: i32) -> Result<i32, AeronCError>
pub fn aeron_ipc_publication_close(&self, publication: &AeronIpcPublication)
pub fn aeron_network_publication_close( &self, publication: &AeronNetworkPublication, )
pub fn aeron_send_channel_endpoint_delete( &self, endpoint: &AeronSendChannelEndpoint, ) -> Result<i32, AeronCError>
pub fn aeron_receive_channel_endpoint_delete( &self, endpoint: &AeronReceiveChannelEndpoint, ) -> Result<i32, AeronCError>
pub fn aeron_publication_image_close( &self, image: &AeronPublicationImage, ) -> Result<i32, AeronCError>
pub fn get_inner(&self) -> *mut aeron_counters_manager_t
Sourcepub unsafe fn get_inner_mut(&self) -> &mut aeron_counters_manager_t
pub unsafe fn get_inner_mut(&self) -> &mut aeron_counters_manager_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_counters_manager_t
Source§impl AeronCountersManager
impl AeronCountersManager
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 AeronCountersManager
impl Clone for AeronCountersManager
Source§fn clone(&self) -> AeronCountersManager
fn clone(&self) -> AeronCountersManager
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AeronCountersManager
impl Debug for AeronCountersManager
Source§impl Default for AeronCountersManager
This will create an instance where the struct is zeroed, use with care
impl Default for AeronCountersManager
This will create an instance where the struct is zeroed, use with care