OpenDDS
Snapshot(2023/04/07-19:43)
|
Public Member Functions | |
RtpsWriter (const TransportClient_rch &client, const RtpsUdpDataLink_rch &link, const GUID_t &id, bool durable, SequenceNumber max_sn, CORBA::Long heartbeat_count, size_t capacity) | |
virtual | ~RtpsWriter () |
SequenceNumber | max_data_seq (const SingleSendBuffer::Proxy &proxy, const ReaderInfo_rch &) const |
SequenceNumber | update_max_sn (const GUID_t &reader, SequenceNumber seq) |
void | add_elem_awaiting_ack (TransportQueueElement *element) |
RemoveResult | remove_sample (const DataSampleElement *sample) |
void | remove_all_msgs () |
bool | add_reader (const ReaderInfo_rch &reader) |
bool | has_reader (const GUID_t &id) const |
bool | is_leading (const GUID_t &id) const |
bool | remove_reader (const GUID_t &id) |
size_t | reader_count () const |
CORBA::Long | inc_heartbeat_count () |
void | pre_stop_helper (TqeVector &to_drop, bool true_stop) |
TransportQueueElement * | customize_queue_element_helper (TransportQueueElement *element, bool requires_inline_qos, MetaSubmessageVec &meta_submessages, bool &deliver_after_send) |
void | process_acknack (const RTPS::AckNackSubmessage &acknack, const GUID_t &src, MetaSubmessageVec &meta_submessages) |
void | process_nackfrag (const RTPS::NackFragSubmessage &nackfrag, const GUID_t &src, MetaSubmessageVec &meta_submessages) |
void | process_acked_by_all () |
void | gather_nack_replies_i (MetaSubmessageVec &meta_submessages) |
void | gather_heartbeats_i (MetaSubmessageVec &meta_submessages) |
void | gather_heartbeats (RcHandle< ConstSharedRepoIdSet > additional_guids, MetaSubmessageVec &meta_submessages) |
void | update_required_acknack_count (const GUID_t &id, CORBA::Long current) |
RcHandle< SingleSendBuffer > | get_send_buff () |
RcHandle< ConstSharedRepoIdSet > | get_remote_reader_guids () |
![]() | |
virtual | ~RcObject () |
virtual void | _add_ref () |
virtual void | _remove_ref () |
long | ref_count () const |
WeakObject * | _get_weak_object () const |
Static Private Member Functions | |
static void | snris_insert (RtpsUdpDataLink::SNRIS &snris, const ReaderInfo_rch &reader) |
static void | snris_erase (RtpsUdpDataLink::SNRIS &snris, const SequenceNumber sn, const ReaderInfo_rch &reader) |
Additional Inherited Members | |
![]() | |
RcObject () | |
Definition at line 424 of file RtpsUdpDataLink.h.
OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::RtpsWriter | ( | const TransportClient_rch & | client, |
const RtpsUdpDataLink_rch & | link, | ||
const GUID_t & | id, | ||
bool | durable, | ||
SequenceNumber | max_sn, | ||
CORBA::Long | heartbeat_count, | ||
size_t | capacity | ||
) |
Definition at line 4445 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::RcHandle< T >::in(), send_buff_, and OpenDDS::DCPS::RtpsUdpDataLink::send_strategy().
|
virtual |
Definition at line 4468 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, ACE_TEXT(), elems_not_acked_, and LM_WARNING.
|
private |
Definition at line 3969 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, OpenDDS::DCPS::SequenceNumber::MAX_VALUE, OPENDDS_MULTIMAP, and OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_VECTOR().
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::add_elem_awaiting_ack | ( | TransportQueueElement * | element | ) |
Definition at line 4505 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, elems_not_acked_, elems_not_acked_mutex_, and OpenDDS::DCPS::TransportQueueElement::sequence().
|
private |
Definition at line 1501 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::ENTITYID_UNKNOWN, OpenDDS::RTPS::FLAG_E, OpenDDS::RTPS::GAP, OpenDDS::DCPS::grow(), OpenDDS::DCPS::DataLink::id_, OpenDDS::DCPS::Encoding::KIND_XCDR1, OPENDDS_ASSERT, OpenDDS::DCPS::serialized_size(), OpenDDS::RTPS::SMHDR_SZ, OpenDDS::RTPS::GapSubmessage::smHeader, OpenDDS::RTPS::SubmessageHeader::submessageLength, and OpenDDS::RTPS::to_rtps_seqnum().
bool OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::add_reader | ( | const ReaderInfo_rch & | reader | ) |
Definition at line 2032 of file RtpsUdpDataLink.cpp.
References ACE_GUARD_RETURN, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::DCPS::RtpsUdpDataLink::heartbeat_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::log_remote_counts(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_, OPENDDS_ASSERT, OpenDDS::DCPS::RtpsUdpDataLink::queue_submessages(), and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::stopping_.
|
private |
Definition at line 3896 of file RtpsUdpDataLink.cpp.
References OPENDDS_ASSERT, OpenDDS::DCPS::SequenceNumber::previous(), and OpenDDS::DCPS::SequenceNumber::ZERO().
Referenced by update_max_sn().
TransportQueueElement * OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::customize_queue_element_helper | ( | TransportQueueElement * | element, |
bool | requires_inline_qos, | ||
MetaSubmessageVec & | meta_submessages, | ||
bool & | deliver_after_send | ||
) |
Definition at line 1077 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, ACE_GUARD_RETURN, OpenDDS::DCPS::LogGuid::c_str(), ACE_Message_Block::cont(), OpenDDS::DCPS::RtpsSampleHeader::control_message_supported(), OpenDDS::DCPS::TransportQueueElement::data_delivered(), OpenDDS::DCPS::TransportQueueElement::data_dropped(), OpenDDS::DCPS::DATAWRITER_LIVELINESS, ACE_Message_Block::duplicate(), OpenDDS::DCPS::END_HISTORIC_SAMPLES, OpenDDS::DCPS::DataSampleElement::get_header(), OpenDDS::DCPS::SequenceNumber::getValue(), OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::DCPS::TransportSendControlElement::header(), OpenDDS::DCPS::DataSampleHeader::historic_sample_, OpenDDS::DCPS::DataLink::id_, OpenDDS::DCPS::TransportQueueElement::is_fragment(), OpenDDS::DCPS::TransportQueueElement::is_last_fragment(), LM_DEBUG, OpenDDS::DCPS::TransportDebug::log_messages, OpenDDS::DCPS::DataSampleHeader::message_id_, OpenDDS::DCPS::move(), OpenDDS::DCPS::TransportQueueElement::msg(), OpenDDS::DCPS::InternalDataReaderListener< NetworkInterfaceAddress >::mutex_, OPENDDS_ASSERT, OpenDDS::DCPS::TransportCustomizedElement::original_send_element(), OpenDDS::DCPS::RtpsSampleHeader::populate_data_control_submessages(), OpenDDS::DCPS::RtpsSampleHeader::populate_data_sample_submessages(), OpenDDS::DCPS::TransportQueueElement::publication_id(), OpenDDS::DCPS::unique_ptr< T, Deleter >::release(), OpenDDS::DCPS::REQUEST_ACK, OpenDDS::DCPS::unique_ptr< T, Deleter >::reset(), OpenDDS::DCPS::TransportSendElement::sample(), OpenDDS::DCPS::RtpsUdpDataLink::send_heartbeats_manual_i(), OpenDDS::DCPS::RtpsUdpDataLink::send_strategy(), OpenDDS::DCPS::DataLink::send_strategy_, OpenDDS::DCPS::TransportCustomizedElement::sequence(), OpenDDS::DCPS::TransportQueueElement::sequence(), OpenDDS::DCPS::SequenceNumber::SEQUENCENUMBER_UNKNOWN(), OpenDDS::DCPS::DataLink::strategy_lock_, OpenDDS::DCPS::RtpsUdpDataLink::submsgs_to_msgblock(), OpenDDS::DCPS::TransportQueueElement::subscription_id(), OpenDDS::DCPS::transport_debug, and OpenDDS::DCPS::Transport_debug_level.
|
private |
Definition at line 1343 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::DCPS::DataLink::id_, LM_DEBUG, OpenDDS::DCPS::log_progress(), OpenDDS::DCPS::TransportDebug::log_progress, OpenDDS::DCPS::DataSampleHeader::message_length_, OpenDDS::DCPS::TimePoint_T< MonotonicClock >::now(), ACE_Message_Block::rd_ptr(), OpenDDS::DCPS::transport_debug, and OpenDDS::DCPS::Transport_debug_level.
|
private |
Definition at line 3758 of file RtpsUdpDataLink.cpp.
|
private |
Definition at line 4179 of file RtpsUdpDataLink.cpp.
References OpenDDS::RTPS::HeartBeatSubmessage::count, OpenDDS::DCPS::MetaSubmessage::dst_guid_, OpenDDS::RTPS::HeartBeatSubmessage::firstSN, OpenDDS::RTPS::Submessage::heartbeat_sm, OpenDDS::RTPS::HeartBeatSubmessage::lastSN, OPENDDS_ASSERT, OpenDDS::DCPS::SequenceNumber::previous(), OpenDDS::RTPS::HeartBeatSubmessage::readerId, OpenDDS::DCPS::MetaSubmessage::reset_destination(), OpenDDS::DCPS::MetaSubmessage::sm_, OpenDDS::RTPS::to_rtps_seqnum(), and OpenDDS::RTPS::Count_t::value.
|
private |
Definition at line 3099 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, OpenDDS::DCPS::DisjointSequence::bitmap_num_longs(), OpenDDS::RTPS::SequenceNumberSet::bitmapBase, OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::DisjointSequence::cumulative_ack(), OpenDDS::DCPS::DisjointSequence::disjoint(), OpenDDS::DCPS::DisjointSequence::empty(), OpenDDS::DCPS::GUID_t::entityId, OpenDDS::DCPS::ENTITYID_UNKNOWN, OpenDDS::RTPS::FLAG_E, OpenDDS::RTPS::GAP, OpenDDS::RTPS::Submessage::gap_sm, OpenDDS::RTPS::GapSubmessage::gapList, OpenDDS::RTPS::GapSubmessage::gapStart, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::DCPS::DisjointSequence::high(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, LM_DEBUG, OpenDDS::DCPS::DisjointSequence::low(), OPENDDS_ASSERT, OpenDDS::DCPS::SequenceNumber::previous(), OpenDDS::DCPS::MetaSubmessage::sm_, OpenDDS::DCPS::DisjointSequence::to_bitmap(), OpenDDS::RTPS::to_opendds_seqnum(), OpenDDS::RTPS::to_rtps_seqnum(), and OpenDDS::DCPS::Transport_debug_level.
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::gather_heartbeats | ( | RcHandle< ConstSharedRepoIdSet > | additional_guids, |
MetaSubmessageVec & | meta_submessages | ||
) |
Definition at line 4297 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, OpenDDS::RTPS::HeartBeatSubmessage::count, OpenDDS::DCPS::MetaSubmessage::dst_guid_, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::RTPS::Submessage::heartbeat_sm, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_, OPENDDS_ASSERT, OpenDDS::DCPS::MetaSubmessage::reset_destination(), OpenDDS::DCPS::MetaSubmessage::sm_, and OpenDDS::RTPS::Count_t::value.
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::gather_heartbeats_i | ( | MetaSubmessageVec & | meta_submessages | ) |
Definition at line 4231 of file RtpsUdpDataLink.cpp.
References OpenDDS::RTPS::HeartBeatSubmessage::count, OpenDDS::DCPS::ENTITYID_UNKNOWN, OpenDDS::RTPS::HeartBeatSubmessage::firstSN, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::RTPS::Submessage::heartbeat_sm, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::RTPS::HeartBeatSubmessage::lastSN, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, OpenDDS::RTPS::HeartBeatSubmessage::readerId, OpenDDS::DCPS::MetaSubmessage::reset_destination(), OpenDDS::DCPS::MetaSubmessage::sm_, OpenDDS::RTPS::to_rtps_seqnum(), and OpenDDS::RTPS::Count_t::value.
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::gather_nack_replies_i | ( | MetaSubmessageVec & | meta_submessages | ) |
Definition at line 3466 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::RtpsUdpDataLink::accumulate_addresses(), ACE_DEBUG, ACE_GUARD, OpenDDS::DCPS::RtpsUdpDataLink::config(), OpenDDS::DCPS::DisjointSequence::dump(), OpenDDS::DCPS::RtpsUdpDataLink::durability_resend(), OpenDDS::DCPS::DisjointSequence::empty(), OpenDDS::RTPS::FLAG_F, OpenDDS::RTPS::SubmessageHeader::flags, OpenDDS::DCPS::RtpsUdpDataLink::get_addresses(), OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::RTPS::Submessage::heartbeat_sm, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::DisjointSequence::insert(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, LM_DEBUG, OpenDDS::DCPS::RtpsUdpDataLink::locators_lock_, OpenDDS::RTPS::OPENDDS_FLAG_R, OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_MAP(), OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_VECTOR(), OpenDDS::DCPS::SequenceNumber::previous(), OpenDDS::DCPS::RcHandle< T >::reset(), OpenDDS::DCPS::RtpsUdpDataLink::send_strategy(), OpenDDS::DCPS::MetaSubmessage::sm_, OpenDDS::RTPS::HeartBeatSubmessage::smHeader, OpenDDS::DCPS::Transport_debug_level, OpenDDS::DCPS::RtpsUdpDataLink::transport_statistics_, OpenDDS::DCPS::RtpsUdpDataLink::transport_statistics_mutex_, and OpenDDS::DCPS::InternalTransportStatistics::writer_resend_count.
|
inline |
Definition at line 570 of file RtpsUdpDataLink.h.
|
inline |
Definition at line 569 of file RtpsUdpDataLink.h.
bool OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::has_reader | ( | const GUID_t & | id | ) | const |
Definition at line 2078 of file RtpsUdpDataLink.cpp.
References ACE_GUARD_RETURN, and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_.
CORBA::Long OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::inc_heartbeat_count | ( | ) |
Definition at line 4477 of file RtpsUdpDataLink.cpp.
References ACE_GUARD_RETURN, heartbeat_count_, and mutex_.
|
private |
Definition at line 4155 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::GUID_t::entityId, OpenDDS::DCPS::ENTITYID_UNKNOWN, OpenDDS::RTPS::FLAG_E, OpenDDS::RTPS::HEARTBEAT, OpenDDS::RTPS::Submessage::heartbeat_sm, OpenDDS::RTPS::HEARTBEAT_SZ, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::MetaSubmessage::sm_, and OpenDDS::RTPS::to_rtps_seqnum().
|
private |
Definition at line 3884 of file RtpsUdpDataLink.cpp.
|
private |
Definition at line 3890 of file RtpsUdpDataLink.cpp.
Referenced by is_leading().
bool OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::is_leading | ( | const GUID_t & | id | ) | const |
Definition at line 4512 of file RtpsUdpDataLink.cpp.
References ACE_GUARD_RETURN, is_leading(), mutex_, and remote_readers_.
|
inlineprivate |
Definition at line 495 of file RtpsUdpDataLink.h.
|
private |
Definition at line 4816 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, id_, LM_DEBUG, OpenDDS::DCPS::TransportDebug::log_remote_counts, preassociation_readers_, remote_readers_, and OpenDDS::DCPS::transport_debug.
|
private |
Definition at line 3858 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::RtpsUdpDataLink::heartbeat_, and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_.
|
private |
Definition at line 3799 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::RtpsUdpDataLink::heartbeat_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::stopping_.
Referenced by update_max_sn().
SequenceNumber OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::max_data_seq | ( | const SingleSendBuffer::Proxy & | proxy, |
const ReaderInfo_rch & | ri | ||
) | const |
Definition at line 4484 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::SingleSendBuffer::Proxy::empty(), OpenDDS::DCPS::SingleSendBuffer::Proxy::high(), OpenDDS::DCPS::SingleSendBuffer::Proxy::pre_empty(), and OpenDDS::DCPS::SingleSendBuffer::Proxy::pre_high().
|
inlineprivate |
Definition at line 500 of file RtpsUdpDataLink.h.
References OpenDDS::DCPS::SingleSendBuffer::Proxy::empty(), OpenDDS::DCPS::SingleSendBuffer::Proxy::low(), OpenDDS::DCPS::SingleSendBuffer::Proxy::pre_empty(), and OpenDDS::DCPS::SingleSendBuffer::Proxy::pre_low().
|
private |
|
private |
|
private |
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::pre_stop_helper | ( | TqeVector & | to_drop, |
bool | true_stop | ||
) |
Definition at line 823 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, OpenDDS::DCPS::RtpsUdpDataLink::heartbeat_, OpenDDS::DCPS::InternalDataReaderListener< NetworkInterfaceAddress >::mutex_, and OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_SET().
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::process_acked_by_all | ( | ) |
Definition at line 3953 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_.
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::process_acknack | ( | const RTPS::AckNackSubmessage & | acknack, |
const GUID_t & | src, | ||
MetaSubmessageVec & | meta_submessages | ||
) |
Definition at line 3155 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, ACE_ERROR, ACE_GUARD, OpenDDS::RTPS::SequenceNumberSet::bitmap, OpenDDS::RTPS::SequenceNumberSet::bitmapBase, OpenDDS::RTPS::bitmapNonEmpty(), OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::RtpsUdpDataLink::config(), OpenDDS::DCPS::SingleSendBuffer::Proxy::contains(), OpenDDS::RTPS::AckNackSubmessage::count, OpenDDS::DCPS::RtpsUdpInst::DEFAULT_NAK_RESPONSE_DELAY_USEC, OpenDDS::DCPS::EventDispatcher::dispatch(), OpenDDS::DCPS::RtpsUdpDataLink::event_dispatcher(), OpenDDS::RTPS::FLAG_F, OpenDDS::RTPS::SubmessageHeader::flags, OpenDDS::DCPS::SequenceNumber::getValue(), OpenDDS::DCPS::RtpsUdpDataLink::heartbeat_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, LM_DEBUG, LM_ERROR, LM_WARNING, OpenDDS::DCPS::TransportDebug::log_dropped_messages, OpenDDS::DCPS::TransportDebug::log_nonfinal_messages, OpenDDS::DCPS::log_progress(), OpenDDS::DCPS::TransportDebug::log_progress, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::log_remote_counts(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_, OpenDDS::RTPS::SequenceNumberSet::numBits, OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_MAP(), OPENDDS_MULTIMAP, OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_VECTOR(), OpenDDS::DCPS::SingleSendBuffer::Proxy::pre_contains(), OpenDDS::RTPS::AckNackSubmessage::readerSNState, OpenDDS::DCPS::RcHandle< T >::reset(), OpenDDS::DCPS::SequenceNumber::SEQUENCENUMBER_UNKNOWN(), OpenDDS::RTPS::AckNackSubmessage::smHeader, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::stopping_, OpenDDS::DCPS::RcHandle< T >::swap(), OpenDDS::RTPS::to_opendds_seqnum(), OpenDDS::DCPS::transport_debug, OpenDDS::DCPS::Transport_debug_level, OpenDDS::RTPS::Count_t::value, VDBG, and OpenDDS::DCPS::TimePoint_T< MonotonicClock >::zero_value.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::received().
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::process_nackfrag | ( | const RTPS::NackFragSubmessage & | nackfrag, |
const GUID_t & | src, | ||
MetaSubmessageVec & | meta_submessages | ||
) |
Definition at line 3411 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, ACE_GUARD, OpenDDS::RTPS::FragmentNumberSet::bitmapBase, OpenDDS::DCPS::RtpsUdpDataLink::config(), OpenDDS::RTPS::NackFragSubmessage::count, OpenDDS::DCPS::RtpsUdpInst::DEFAULT_NAK_RESPONSE_DELAY_USEC, OpenDDS::RTPS::NackFragSubmessage::fragmentNumberState, OpenDDS::DCPS::SequenceNumber::getValue(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, LM_DEBUG, OpenDDS::DCPS::TransportDebug::log_dropped_messages, OpenDDS::DCPS::TransportDebug::log_nonfinal_messages, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_, OpenDDS::RTPS::FragmentNumberSet::numBits, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::stopping_, OpenDDS::RTPS::to_opendds_seqnum(), OpenDDS::DCPS::transport_debug, OpenDDS::DCPS::Transport_debug_level, OpenDDS::RTPS::Count_t::value, OpenDDS::RTPS::FragmentNumber_t::value, and OpenDDS::RTPS::NackFragSubmessage::writerSN.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::received().
size_t OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::reader_count | ( | ) | const |
Definition at line 2142 of file RtpsUdpDataLink.cpp.
References ACE_GUARD_RETURN, and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_.
|
private |
Definition at line 3933 of file RtpsUdpDataLink.cpp.
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::remove_all_msgs | ( | ) |
Definition at line 249 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, OpenDDS::DCPS::DataLink::id_, OpenDDS::DCPS::InternalDataReaderListener< NetworkInterfaceAddress >::mutex_, OpenDDS::DCPS::TransportSendStrategy::remove_all_msgs(), OpenDDS::DCPS::DataLink::send_strategy_, OpenDDS::DCPS::DataLink::strategy_lock_, and OpenDDS::DCPS::SequenceNumber::ZERO().
|
inlineprivate |
Definition at line 511 of file RtpsUdpDataLink.h.
References OPENDDS_ASSERT.
bool OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::remove_reader | ( | const GUID_t & | id | ) |
Definition at line 2085 of file RtpsUdpDataLink.cpp.
References ACE_GUARD_RETURN, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::log_remote_counts(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_, OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_MAP(), OPENDDS_MULTIMAP, and OpenDDS::DCPS::RtpsUdpDataLink::OPENDDS_VECTOR().
RemoveResult OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::remove_sample | ( | const DataSampleElement * | sample | ) |
Definition at line 182 of file RtpsUdpDataLink.cpp.
References ACE_Message_Block::cont(), OpenDDS::DCPS::TransportQueueElement::data_dropped(), OpenDDS::DCPS::DataSampleElement::get_header(), OpenDDS::DCPS::DataSampleElement::get_sample(), OpenDDS::DCPS::TransportQueueElement::MatchOnDataPayload::matches(), OpenDDS::DCPS::InternalDataReaderListener< NetworkInterfaceAddress >::mutex_, ACE_Message_Block::rd_ptr(), ACE_Guard< ACE_LOCK >::release(), OpenDDS::DCPS::REMOVE_FOUND, OpenDDS::DCPS::REMOVE_NOT_FOUND, OpenDDS::DCPS::TransportSendStrategy::remove_sample(), OpenDDS::DCPS::DataLink::send_strategy_, OpenDDS::DCPS::DataSampleHeader::sequence_, and OpenDDS::DCPS::DataLink::strategy_lock_.
|
private |
Definition at line 1393 of file RtpsUdpDataLink.cpp.
References ACE_DEBUG, OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::DCPS::DataLink::id_, LM_DEBUG, OpenDDS::DCPS::DataSampleHeader::message_length_, ACE_Message_Block::rd_ptr(), and OpenDDS::DCPS::Transport_debug_level.
|
private |
Definition at line 1449 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, OpenDDS::DCPS::RtpsUdpDataLink::heartbeat_, OpenDDS::DCPS::InternalDataReaderListener< NetworkInterfaceAddress >::mutex_, and OpenDDS::DCPS::RtpsUdpDataLink::queue_submessages().
|
private |
Definition at line 4380 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::GUID_t::entityId, OpenDDS::DCPS::ENTITYID_UNKNOWN, OpenDDS::RTPS::FLAG_E, OpenDDS::RTPS::FLAG_F, OpenDDS::RTPS::FLAG_L, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::RTPS::HEARTBEAT, OpenDDS::RTPS::Submessage::heartbeat_sm, OpenDDS::RTPS::HEARTBEAT_SZ, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::id_, OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, OpenDDS::DCPS::MetaSubmessage::sm_, and OpenDDS::RTPS::to_rtps_seqnum().
|
private |
Definition at line 1479 of file RtpsUdpDataLink.cpp.
References ACE_GUARD, OpenDDS::DCPS::InternalDataReaderListener< NetworkInterfaceAddress >::mutex_, and OpenDDS::DCPS::RtpsUdpDataLink::queue_submessages().
|
staticprivate |
Definition at line 3785 of file RtpsUdpDataLink.cpp.
|
staticprivate |
Definition at line 3773 of file RtpsUdpDataLink.cpp.
SequenceNumber OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::update_max_sn | ( | const GUID_t & | reader, |
SequenceNumber | seq | ||
) |
Definition at line 4494 of file RtpsUdpDataLink.cpp.
References check_leader_lagger(), make_leader_lagger(), max_sn_, and mutex_.
|
private |
Definition at line 4204 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::RtpsUdpDataLink::bundling_cache_, OpenDDS::DCPS::GUID_UNKNOWN, OpenDDS::DCPS::insert(), OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::link_, and OpenDDS::DCPS::AddressCache< Key >::remove_id().
void OpenDDS::DCPS::RtpsUdpDataLink::RtpsWriter::update_required_acknack_count | ( | const GUID_t & | id, |
CORBA::Long | current | ||
) |
Definition at line 2731 of file RtpsUdpDataLink.cpp.
References OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::mutex_.
|
private |
Definition at line 446 of file RtpsUdpDataLink.h.
|
private |
Definition at line 449 of file RtpsUdpDataLink.h.
|
private |
Definition at line 445 of file RtpsUdpDataLink.h.
Referenced by add_elem_awaiting_ack(), and ~RtpsWriter().
|
mutableprivate |
Definition at line 460 of file RtpsUdpDataLink.h.
Referenced by add_elem_awaiting_ack().
|
private |
Definition at line 466 of file RtpsUdpDataLink.h.
|
private |
Definition at line 462 of file RtpsUdpDataLink.h.
|
private |
Definition at line 451 of file RtpsUdpDataLink.h.
Referenced by inc_heartbeat_count().
|
private |
Definition at line 448 of file RtpsUdpDataLink.h.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::deliver_held_data(), log_remote_counts(), and OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::log_remote_counts().
|
private |
Definition at line 465 of file RtpsUdpDataLink.h.
|
private |
Partcicipant Secure (Reliable SPDP) writer.
Definition at line 456 of file RtpsUdpDataLink.h.
|
private |
Participant Volatile Secure writer.
Definition at line 454 of file RtpsUdpDataLink.h.
|
private |
These readers have not acked everything they are supposed to have acked.
Definition at line 434 of file RtpsUdpDataLink.h.
|
private |
These reader have acked everything they are supposed to have acked.
Definition at line 436 of file RtpsUdpDataLink.h.
|
private |
Definition at line 447 of file RtpsUdpDataLink.h.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::deliver_held_data().
|
private |
Definition at line 442 of file RtpsUdpDataLink.h.
Referenced by update_max_sn().
|
mutableprivate |
Definition at line 458 of file RtpsUdpDataLink.h.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::deliver_held_data(), inc_heartbeat_count(), is_leading(), and update_max_sn().
|
private |
Definition at line 463 of file RtpsUdpDataLink.h.
|
private |
Definition at line 431 of file RtpsUdpDataLink.h.
|
private |
Preassociation readers require a non-final heartbeat.
Definition at line 429 of file RtpsUdpDataLink.h.
Referenced by log_remote_counts().
|
private |
These readers have sent a nack and are expecting data.
Definition at line 438 of file RtpsUdpDataLink.h.
|
private |
These readers have sent a non-final ack are are expecting a heartbeat.
Definition at line 440 of file RtpsUdpDataLink.h.
|
private |
Definition at line 427 of file RtpsUdpDataLink.h.
|
mutableprivate |
Definition at line 459 of file RtpsUdpDataLink.h.
|
private |
Definition at line 426 of file RtpsUdpDataLink.h.
Referenced by is_leading(), and log_remote_counts().
|
private |
Definition at line 441 of file RtpsUdpDataLink.h.
Referenced by RtpsWriter().
|
private |
Definition at line 450 of file RtpsUdpDataLink.h.
Referenced by OpenDDS::DCPS::RtpsUdpDataLink::RtpsReader::deliver_held_data().