OpenDDS
Snapshot(2023/04/07-19:43)
|
Keeps track of a DataWriter's liveliness for a DataReader. More...
#include <WriterInfo.h>
Public Types | |
enum | WriterState { NOT_SET, ALIVE, DEAD } |
enum | TimerState { NO_TIMER = -1 } |
Private Member Functions | |
OPENDDS_MAP (SequenceNumber, ReceivedDataSample) historic_samples_ | |
typedef | OPENDDS_MAP (DDS::InstanceHandle_t, bool) OwnerEvaluateFlags |
Is this writer evaluated for owner ? More... | |
Friends | |
class | WriteInfoListner |
Additional Inherited Members | |
![]() | |
RcObject () | |
Keeps track of a DataWriter's liveliness for a DataReader.
Definition at line 81 of file WriterInfo.h.
Enumerator | |
---|---|
NOT_SET | |
ALIVE | |
DEAD |
Definition at line 85 of file WriterInfo.h.
OpenDDS::DCPS::WriterInfo::WriterInfo | ( | const WriterInfoListener_rch & | reader, |
const GUID_t & | writer_id, | ||
const DDS::DataWriterQos & | writer_qos | ||
) |
Referenced by OpenDDS::DCPS::WriterInfoListener::writer_removed().
void OpenDDS::DCPS::WriterInfo::add_coherent_samples | ( | const SequenceNumber & | seq | ) |
Definition at line 165 of file WriterInfo.cpp.
Referenced by OpenDDS::DCPS::DataReaderImpl::writer_activity().
void OpenDDS::DCPS::WriterInfo::cancel_historic_samples_timer | ( | EndHistoricSamplesMissedSweeper * | sweeper | ) |
Definition at line 111 of file WriterInfo.cpp.
References NO_TIMER, and OpenDDS::DCPS::ReactorInterceptor::reactor().
MonotonicTimePoint OpenDDS::DCPS::WriterInfo::check_activity | ( | const MonotonicTimePoint & | now | ) |
check to see if this writer is alive (called by handle_timeout).
now | next monotonic time this DataWriter will become not active (not alive) if no sample or liveliness message is received. |
Definition at line 220 of file WriterInfo.cpp.
References OpenDDS::DCPS::TimePoint_T< MonotonicClock >::max_value, and ACE_Guard< ACE_LOCK >::release().
bool OpenDDS::DCPS::WriterInfo::check_end_historic_samples | ( | EndHistoricSamplesMissedSweeper * | sweeper, |
OPENDDS_MAP(SequenceNumber, ReceivedDataSample)& | to_deliver | ||
) |
Definition at line 121 of file WriterInfo.cpp.
References OpenDDS::DCPS::EndHistoricSamplesMissedSweeper::cancel_timer(), OpenDDS::DCPS::rchandle_from(), ACE_Guard< ACE_LOCK >::release(), and TheServiceParticipant.
Referenced by OpenDDS::DCPS::DataReaderImpl::resume_sample_processing().
bool OpenDDS::DCPS::WriterInfo::check_historic | ( | const SequenceNumber & | seq, |
const ReceivedDataSample & | sample, | ||
SequenceNumber & | last_historic_seq | ||
) |
Definition at line 144 of file WriterInfo.cpp.
void OpenDDS::DCPS::WriterInfo::clear_owner_evaluated | ( | ) |
Definition at line 190 of file WriterInfo.cpp.
Referenced by OpenDDS::DCPS::DataReaderImpl::writer_became_dead(), and OpenDDS::DCPS::DataReaderImpl::writer_removed().
void OpenDDS::DCPS::WriterInfo::coherent_change | ( | bool | group_coherent, |
const GUID_t & | publisher_id | ||
) |
Definition at line 180 of file WriterInfo.cpp.
Coherent_State OpenDDS::DCPS::WriterInfo::coherent_change_received | ( | ) |
Definition at line 256 of file WriterInfo.cpp.
References OpenDDS::DCPS::COMPLETED, OpenDDS::DCPS::NOT_COMPLETED_YET, and OpenDDS::DCPS::REJECTED.
Referenced by OpenDDS::DCPS::DataReaderImpl::verify_coherent_changes_completion().
void OpenDDS::DCPS::WriterInfo::finished_delivering_historic | ( | ) |
Definition at line 156 of file WriterInfo.cpp.
Referenced by OpenDDS::DCPS::DataReaderImpl::resume_sample_processing().
const char * OpenDDS::DCPS::WriterInfo::get_state_str | ( | ) | const |
Definition at line 84 of file WriterInfo.cpp.
References ACE_ERROR, ACE_TEXT(), and LM_ERROR.
Referenced by OpenDDS::DCPS::DataReaderImpl::writer_became_alive(), and OpenDDS::DCPS::DataReaderImpl::writer_became_dead().
|
inline |
Definition at line 181 of file WriterInfo.h.
Referenced by OpenDDS::DCPS::DataReaderImpl::verify_coherent_changes_completion().
|
inline |
Definition at line 115 of file WriterInfo.h.
Referenced by OpenDDS::DCPS::DataReaderImpl::writer_became_alive(), OpenDDS::DCPS::DataReaderImpl::writer_became_dead(), and OpenDDS::DCPS::DataReaderImpl::writer_removed().
|
inline |
Definition at line 121 of file WriterInfo.h.
bool OpenDDS::DCPS::WriterInfo::is_owner_evaluated | ( | DDS::InstanceHandle_t | instance | ) |
Definition at line 207 of file WriterInfo.cpp.
|
inline |
Definition at line 157 of file WriterInfo.h.
|
inline |
Definition at line 163 of file WriterInfo.h.
|
private |
Temporary holding place for samples received before the END_HISTORIC_SAMPLES control message.
|
private |
Is this writer evaluated for owner ?
|
inline |
Definition at line 186 of file WriterInfo.h.
References OpenDDS::DCPS::OPENDDS_MAP().
Referenced by OpenDDS::DCPS::DataReaderImpl::verify_coherent_changes_completion().
|
inline |
called when a sample or other activity is received from this writer.
Definition at line 260 of file WriterInfo.h.
References ACE_Guard< ACE_LOCK >::release().
Referenced by OpenDDS::DCPS::DataReaderImpl::writer_activity().
void OpenDDS::DCPS::WriterInfo::removed | ( | ) |
update liveliness when remove_association is called.
Definition at line 244 of file WriterInfo.cpp.
References ACE_Guard< ACE_LOCK >::release().
void OpenDDS::DCPS::WriterInfo::reset_coherent_info | ( | ) |
Definition at line 278 of file WriterInfo.cpp.
References OpenDDS::DCPS::GUID_UNKNOWN.
Referenced by OpenDDS::DCPS::DataReaderImpl::verify_coherent_changes_completion().
void OpenDDS::DCPS::WriterInfo::schedule_historic_samples_timer | ( | EndHistoricSamplesMissedSweeper * | sweeper, |
const ACE_Time_Value & | ten_seconds | ||
) |
Definition at line 103 of file WriterInfo.cpp.
References OpenDDS::DCPS::ReactorInterceptor::reactor().
void OpenDDS::DCPS::WriterInfo::set_group_info | ( | const CoherentChangeControl & | info | ) |
Definition at line 291 of file WriterInfo.cpp.
References ACE_ERROR, ACE_TEXT(), OpenDDS::DCPS::LogGuid::c_str(), OpenDDS::DCPS::CoherentChangeControl::coherent_samples_, OpenDDS::DCPS::CoherentChangeControl::group_coherent_, OpenDDS::DCPS::CoherentChangeControl::group_coherent_samples_, LM_ERROR, OPENDDS_END_VERSIONED_NAMESPACE_DECL, and OpenDDS::DCPS::CoherentChangeControl::publisher_id_.
Referenced by OpenDDS::DCPS::DataReaderImpl::data_received().
void OpenDDS::DCPS::WriterInfo::set_owner_evaluated | ( | DDS::InstanceHandle_t | instance, |
bool | flag | ||
) |
Definition at line 197 of file WriterInfo.cpp.
|
inline |
returns 1 if the DataWriter is lively; 2 if dead; otherwise returns 0.
Definition at line 103 of file WriterInfo.h.
Referenced by OpenDDS::DCPS::DataReaderImpl::writer_became_alive(), OpenDDS::DCPS::DataReaderImpl::writer_became_dead(), and OpenDDS::DCPS::DataReaderImpl::writer_removed().
|
inline |
Definition at line 109 of file WriterInfo.h.
References state.
|
inline |
Definition at line 145 of file WriterInfo.h.
Referenced by OpenDDS::DCPS::DataReaderImpl::add_association(), OpenDDS::DCPS::EndHistoricSamplesMissedSweeper::cancel_timer(), and OpenDDS::DCPS::EndHistoricSamplesMissedSweeper::schedule_timer().
|
inline |
Definition at line 151 of file WriterInfo.h.
|
inline |
Definition at line 127 of file WriterInfo.h.
Referenced by OpenDDS::DCPS::DataReaderImpl::verify_coherent_changes_completion(), OpenDDS::DCPS::DataReaderImpl::writer_became_alive(), OpenDDS::DCPS::DataReaderImpl::writer_became_dead(), and OpenDDS::DCPS::DataReaderImpl::writer_removed().
|
inline |
Definition at line 133 of file WriterInfo.h.
|
inline |
Definition at line 139 of file WriterInfo.h.
|
friend |
Definition at line 82 of file WriterInfo.h.
|
private |
Definition at line 251 of file WriterInfo.h.
|
private |
Number of received coherent changes in active change set.
Definition at line 241 of file WriterInfo.h.
|
private |
Definition at line 222 of file WriterInfo.h.
|
private |
Definition at line 223 of file WriterInfo.h.
|
private |
Data to support GROUP access scope.
Definition at line 249 of file WriterInfo.h.
|
private |
Definition at line 253 of file WriterInfo.h.
|
private |
The publication entity instance handle.
Definition at line 238 of file WriterInfo.h.
|
private |
Definition at line 211 of file WriterInfo.h.
|
private |
After receiving END_HISTORIC_SAMPLES, check for duplicates.
Definition at line 218 of file WriterInfo.h.
|
private |
Timestamp of last write/dispose/assert_liveliness from this DataWriter.
Definition at line 208 of file WriterInfo.h.
|
mutableprivate |
Definition at line 205 of file WriterInfo.h.
|
private |
Definition at line 245 of file WriterInfo.h.
|
private |
Definition at line 250 of file WriterInfo.h.
|
private |
The DataReader owning this WriterInfo.
Definition at line 229 of file WriterInfo.h.
|
private |
State of the writer.
Definition at line 226 of file WriterInfo.h.
|
private |
Definition at line 220 of file WriterInfo.h.
|
private |
Definition at line 252 of file WriterInfo.h.
|
private |
DCPSInfoRepo ID of the DataWriter.
Definition at line 232 of file WriterInfo.h.
|
private |
Writer qos.
Definition at line 235 of file WriterInfo.h.