pub struct AeronLossDetector { /* private fields */ }
Implementations§
Source§impl AeronLossDetector
impl AeronLossDetector
pub fn new( on_gap_detected: aeron_term_gap_scanner_on_gap_detected_func_t, feedback_delay_state: &AeronFeedbackDelayGeneratorState, on_gap_detected_clientd: *mut c_void, scanned_gap: AeronLossDetectorGap, active_gap: AeronLossDetectorGap, expiry_ns: 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 on_gap_detected(&self) -> aeron_term_gap_scanner_on_gap_detected_func_t
pub fn feedback_delay_state(&self) -> AeronFeedbackDelayGeneratorState
pub fn on_gap_detected_clientd(&self) -> *mut c_void
pub fn scanned_gap(&self) -> AeronLossDetectorGap
pub fn active_gap(&self) -> AeronLossDetectorGap
pub fn expiry_ns(&self) -> i64
pub fn init<AeronTermGapScannerGapDetectedFuncHandlerImpl: AeronTermGapScannerGapDetectedFuncCallback>( &self, feedback_delay_state: &AeronFeedbackDelayGeneratorState, on_gap_detected: Option<&Handler<AeronTermGapScannerGapDetectedFuncHandlerImpl>>, ) -> Result<i32, AeronCError>
Sourcepub fn init_once<AeronTermGapScannerGapDetectedFuncHandlerImpl: FnMut(i32, i32, usize)>(
&self,
feedback_delay_state: &AeronFeedbackDelayGeneratorState,
on_gap_detected: AeronTermGapScannerGapDetectedFuncHandlerImpl,
) -> Result<i32, AeronCError>
pub fn init_once<AeronTermGapScannerGapDetectedFuncHandlerImpl: FnMut(i32, i32, usize)>( &self, feedback_delay_state: &AeronFeedbackDelayGeneratorState, on_gap_detected: AeronTermGapScannerGapDetectedFuncHandlerImpl, ) -> Result<i32, AeronCError>
NOTE: aeron must not store this closure and instead use it immediately. If not you will get undefined behaviour, use with care
pub fn scan( &self, loss_found: &mut bool, buffer: *const u8, rebuild_position: i64, hwm_position: i64, now_ns: i64, term_length_mask: usize, position_bits_to_shift: usize, initial_term_id: i32, ) -> i32
pub fn get_inner(&self) -> *mut aeron_loss_detector_t
pub fn get_inner_mut(&self) -> &mut aeron_loss_detector_t
pub fn get_inner_ref(&self) -> &aeron_loss_detector_t
Source§impl AeronLossDetector
impl AeronLossDetector
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 danagerous to use with Aeron/AeronContext/AeronPublication/AeronSubscription More intended for AeronArchiveRecordingDescriptor
Trait Implementations§
Source§impl Clone for AeronLossDetector
impl Clone for AeronLossDetector
Source§fn clone(&self) -> AeronLossDetector
fn clone(&self) -> AeronLossDetector
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AeronLossDetector
impl Debug for AeronLossDetector
Source§impl Default for AeronLossDetector
This will create an instance where the struct is zeroed, use with care
impl Default for AeronLossDetector
This will create an instance where the struct is zeroed, use with care