pub struct SubscriptionBuiltinTopicData {Show 23 fields
pub key: Guid,
pub participant_key: Guid,
pub topic_name: String,
pub type_name: String,
pub durability: DurabilityKind,
pub reliability: ReliabilityQos,
pub ownership: OwnershipKind,
pub liveliness: LivelinessQosPolicy,
pub deadline: DeadlineQosPolicy,
pub partition: Vec<String>,
pub user_data: Vec<u8>,
pub topic_data: Vec<u8>,
pub group_data: Vec<u8>,
pub type_information: Option<Vec<u8>>,
pub data_representation: Vec<i16>,
pub content_filter: Option<ContentFilterProperty>,
pub security_info: Option<EndpointSecurityInfo>,
pub service_instance_name: Option<String>,
pub related_entity_guid: Option<Guid>,
pub topic_aliases: Option<Vec<String>>,
pub type_identifier: TypeIdentifier,
pub unicast_locators: Vec<Locator>,
pub multicast_locators: Vec<Locator>,
}Expand description
Discovered Subscription / lokaler DataReader — Subset.
Wire-identical to [PublicationBuiltinTopicData] in phase 1; a
separate type so the SEDP publications and subscriptions caches stay
clearly distinguishable and extensions (e.g. expects_inline_qos,
time_based_filter) are not pulled through the publication type.
Fields§
§key: GuidEndpoint GUID (= reader GUID).
participant_key: GuidGUID of the participant the reader belongs to.
topic_name: StringTopic name.
type_name: StringIDL type name.
durability: DurabilityKindDurability-QoS.
reliability: ReliabilityQosReliability-QoS.
ownership: OwnershipKindOwnership-QoS (Spec §2.2.3.23). Default Shared.
liveliness: LivelinessQosPolicyLiveliness-QoS (Spec §2.2.3.11).
deadline: DeadlineQosPolicyDeadline-QoS (Spec §2.2.3.7).
partition: Vec<String>Partition-QoS (Spec §2.2.3.13).
user_data: Vec<u8>UserData-QoS (Spec §2.2.3.1) — opaque sequence
topic_data: Vec<u8>TopicData-QoS (Spec §2.2.3.3) — opaque sequence
group_data: Vec<u8>GroupData-QoS (Spec §2.2.3.2) — opaque sequence
type_information: Option<Vec<u8>>Type information as opaque bytes (XTypes §7.6.3.2.2).
data_representation: Vec<i16>Akzeptierte Data-Representations.
content_filter: Option<ContentFilterProperty>Content-filter property (DDSI-RTPS §9.6.3.4 Table 9.14). Only
set if the reader was created as a ContentFilteredTopic.
security_info: Option<EndpointSecurityInfo>Endpoint security info (PID 0x1004, DDS-Security 1.1 §7.4.1.5).
None for legacy peers. WP 4H-c matching checks writer/reader
pairs for protection compatibility.
service_instance_name: Option<String>PID_SERVICE_INSTANCE_NAME (DDS-RPC 1.0 §7.8.2) — logical service-instance name of an RPC endpoint.
PID_RELATED_ENTITY_GUID (DDS-RPC 1.0 §7.8.2) — GUID of the counterpart endpoint (e.g. reply reader → reply writer).
topic_aliases: Option<Vec<String>>PID_TOPIC_ALIASES (DDS-RPC 1.0 §7.8.2).
type_identifier: TypeIdentifierPID_ZERODDS_TYPE_ID (vendor PID 0x8002) — reader type identifier
for XTypes-aware matching (see PublicationBuiltinTopicData).
unicast_locators: Vec<Locator>Endpoint unicast locators (DDSI-RTPS 2.5 §8.5.3.2:
DiscoveredReaderData.readerProxy.unicastLocatorList). Where
peers send user data to this reader endpoint. Empty = the peer
falls back to the participant DEFAULT_UNICAST_LOCATOR from
SPDP (§8.5.5). OpenDDS stores the real user locator exclusively
here.
multicast_locators: Vec<Locator>Endpoint-Multicast-Locators (DDSI-RTPS 2.5 §8.5.3.2).
Implementations§
Source§impl SubscriptionBuiltinTopicData
impl SubscriptionBuiltinTopicData
Sourcepub fn as_reader_qos(&self) -> ReaderQos
pub fn as_reader_qos(&self) -> ReaderQos
Analogous to PublicationBuiltinTopicData::as_writer_qos for readers.
Limitation: only durability + reliability; the remaining
policies at ReaderQos::default().
Sourcepub fn with_reader_qos(self, qos: &ReaderQos) -> Self
pub fn with_reader_qos(self, qos: &ReaderQos) -> Self
Analogous to PublicationBuiltinTopicData::with_writer_qos for readers.
Source§impl SubscriptionBuiltinTopicData
impl SubscriptionBuiltinTopicData
Sourcepub fn to_pl_cdr_le(&self) -> Result<Vec<u8>, WireError>
pub fn to_pl_cdr_le(&self) -> Result<Vec<u8>, WireError>
Encodes to PL_CDR_LE bytes (with a 4-byte encapsulation header).
Implemented directly (not delegated via
[PublicationBuiltinTopicData]) so that extension PIDs that are
writer-only (e.g. PID_LIFESPAN, PID_OWNERSHIP_STRENGTH) do
not accidentally end up in the subscription payload.
§Errors
ValueOutOfRange if a string is longer than u32::MAX.
Trait Implementations§
Source§impl Clone for SubscriptionBuiltinTopicData
impl Clone for SubscriptionBuiltinTopicData
Source§fn clone(&self) -> SubscriptionBuiltinTopicData
fn clone(&self) -> SubscriptionBuiltinTopicData
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SubscriptionBuiltinTopicData
impl Debug for SubscriptionBuiltinTopicData
impl Eq for SubscriptionBuiltinTopicData
Source§impl PartialEq for SubscriptionBuiltinTopicData
impl PartialEq for SubscriptionBuiltinTopicData
Source§fn eq(&self, other: &SubscriptionBuiltinTopicData) -> bool
fn eq(&self, other: &SubscriptionBuiltinTopicData) -> bool
self and other values to be equal, and is used by ==.