rtps-rs 0.1.2

Real Time Publish Subscribe protocol
Documentation
use crate::structure::cache_change::CacheChange;
use crate::structure::change_kind::ChangeKind_t;
use crate::structure::data::Data;
use crate::structure::duration::Duration_t;
use crate::structure::instance_handle::InstanceHandle_t;
use crate::structure::sequence_number::SequenceNumber_t;

pub struct WriterAttributes {
    pub push_mode: bool,
    pub heartbeat_period: Duration_t,
    pub nack_response_delay: Duration_t,
    pub nack_suppression_duration: Duration_t,
    pub last_change_sequence_number: SequenceNumber_t,
}

pub trait Writer {
    fn as_writer(&self) -> &WriterAttributes;
    fn new_change(
        &mut self,
        kind: ChangeKind_t,
        data: Data,
        handle: InstanceHandle_t,
    ) -> CacheChange;
}