Skip to main content

EntityQos

Struct EntityQos 

Source
pub struct EntityQos {
Show 22 fields pub durability: Option<DurabilityQosPolicy>, pub durability_service: Option<DurabilityServiceQosPolicy>, pub presentation: Option<PresentationQosPolicy>, pub deadline: Option<DeadlineQosPolicy>, pub latency_budget: Option<LatencyBudgetQosPolicy>, pub ownership: Option<OwnershipQosPolicy>, pub ownership_strength: Option<OwnershipStrengthQosPolicy>, pub liveliness: Option<LivelinessQosPolicy>, pub time_based_filter: Option<TimeBasedFilterQosPolicy>, pub partition: Option<PartitionQosPolicy>, pub reliability: Option<ReliabilityQosPolicy>, pub transport_priority: Option<TransportPriorityQosPolicy>, pub lifespan: Option<LifespanQosPolicy>, pub destination_order: Option<DestinationOrderQosPolicy>, pub history: Option<HistoryQosPolicy>, pub resource_limits: Option<ResourceLimitsQosPolicy>, pub entity_factory: Option<EntityFactoryQosPolicy>, pub writer_data_lifecycle: Option<WriterDataLifecycleQosPolicy>, pub reader_data_lifecycle: Option<ReaderDataLifecycleQosPolicy>, pub user_data: Option<UserDataQosPolicy>, pub topic_data: Option<TopicDataQosPolicy>, pub group_data: Option<GroupDataQosPolicy>,
}
Expand description

Optional-per-policy container for all 22 OMG-DDS-1.4 QoS policies.

An unset Option means: not listed in the XML → spec default on resolve. Reused as one container for all 6 entity types — DDS-XML 1.0 in principle allows all policies in all 6 containers; semantic filtering (e.g. that OwnershipStrength only makes sense on the writer) happens when materializing into WriterQos/ReaderQos (see Self::into_writer_qos / Self::into_reader_qos).

Fields§

§durability: Option<DurabilityQosPolicy>

<durability> (DDS 1.4 §2.2.3.4).

§durability_service: Option<DurabilityServiceQosPolicy>

<durability_service> (§2.2.3.5).

§presentation: Option<PresentationQosPolicy>

<presentation> (§2.2.3.6).

§deadline: Option<DeadlineQosPolicy>

<deadline> (§2.2.3.7).

§latency_budget: Option<LatencyBudgetQosPolicy>

<latency_budget> (§2.2.3.10).

§ownership: Option<OwnershipQosPolicy>

<ownership> (§2.2.3.23).

§ownership_strength: Option<OwnershipStrengthQosPolicy>

<ownership_strength> (§2.2.3.24).

§liveliness: Option<LivelinessQosPolicy>

<liveliness> (§2.2.3.11).

§time_based_filter: Option<TimeBasedFilterQosPolicy>

<time_based_filter> (§2.2.3.12).

§partition: Option<PartitionQosPolicy>

<partition> (§2.2.3.13).

§reliability: Option<ReliabilityQosPolicy>

<reliability> (§2.2.3.14).

§transport_priority: Option<TransportPriorityQosPolicy>

<transport_priority> (§2.2.3.15).

§lifespan: Option<LifespanQosPolicy>

<lifespan> (§2.2.3.16).

§destination_order: Option<DestinationOrderQosPolicy>

<destination_order> (§2.2.3.18).

§history: Option<HistoryQosPolicy>

<history> (§2.2.3.17).

§resource_limits: Option<ResourceLimitsQosPolicy>

<resource_limits> (§2.2.3.19).

§entity_factory: Option<EntityFactoryQosPolicy>

<entity_factory> (§2.2.3.27).

§writer_data_lifecycle: Option<WriterDataLifecycleQosPolicy>

<writer_data_lifecycle> (§2.2.3.21).

§reader_data_lifecycle: Option<ReaderDataLifecycleQosPolicy>

<reader_data_lifecycle> (§2.2.3.20).

§user_data: Option<UserDataQosPolicy>

<user_data> (§2.2.3.1).

§topic_data: Option<TopicDataQosPolicy>

<topic_data> (§2.2.3.2).

§group_data: Option<GroupDataQosPolicy>

<group_data> (§2.2.3.3).

Implementations§

Source§

impl EntityQos

Source

pub fn merge(self, override_: &Self) -> Self

Merges override_ over self: each explicitly set policy in override_ overrides the one in self. The operation is not commutative — order: parent.merge(child) means “child wins where the child explicitly set a value”.

Source

pub fn into_writer_qos(&self) -> WriterQos

Materializes a WriterQos from the policies set in the EntityQos. None entries are filled with the spec defaults from zerodds_qos::WriterQos::default().

Policies that make no sense for a writer (e.g. time_based_filter, reader_data_lifecycle) are deliberately ignored here — they are only materialized for ReaderQos.

Source

pub fn into_reader_qos(&self) -> ReaderQos

Materializes a ReaderQos analogous to Self::into_writer_qos.

Trait Implementations§

Source§

impl Clone for EntityQos

Source§

fn clone(&self) -> EntityQos

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for EntityQos

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for EntityQos

Source§

fn default() -> EntityQos

Returns the “default value” for a type. Read more
Source§

impl Eq for EntityQos

Source§

impl PartialEq for EntityQos

Source§

fn eq(&self, other: &EntityQos) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for EntityQos

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.