Safe DDS
eprosima::safedds::protocol::ICacheChangeDatabaseUpdater Class Referenceabstract

ICacheChangeDatabaseUpdater interface. More...

#include <ICacheChangeDatabaseUpdater.hpp>

Public Member Functions

virtual void process_cache_change (IReader &reader, const SampleKey &sample_id, const CacheChangeInfo &change_info, const FragmentInfo &fragment_info, const memory::IConstByteArrayView &inline_qos, const memory::IConstByteArrayView &fragment_payload, bool &should_acknowledge_sample) noexcept=0
 Process a cache change. More...
 
virtual void notify_available_changes (IReader &reader, const GUID &writer_guid, const SequenceNumber &first, const SequenceNumber &last) noexcept=0
 Notify available changes from reader. More...
 
virtual void notify_unavailable_changes (IReader &reader, const GUID &writer_guid, const SequenceNumber &first, const SequenceNumber &last) noexcept=0
 Notify unavailable changes from reader. More...
 
virtual ReturnCode firsts_missing_fragments (const SampleKey &sample_key, FragmentNumberSet &fragments) noexcept=0
 Returns a FragmentNumberSet that contains at most the first 256 missing fragments. More...
 

Protected Member Functions

 ~ICacheChangeDatabaseUpdater () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 ICacheChangeDatabaseUpdater () noexcept=default
 Default creation. More...
 
 ICacheChangeDatabaseUpdater (const ICacheChangeDatabaseUpdater &) noexcept=delete
 Copy deleted. More...
 
 ICacheChangeDatabaseUpdater (ICacheChangeDatabaseUpdater &&) noexcept=delete
 Movement deleted. More...
 
ICacheChangeDatabaseUpdateroperator= (const ICacheChangeDatabaseUpdater &) noexcept=delete
 Copy operator deleted. More...
 
ICacheChangeDatabaseUpdateroperator= (ICacheChangeDatabaseUpdater &&) noexcept=delete
 Movement operator deleted. More...
 

Detailed Description

Constructor & Destructor Documentation

◆ ~ICacheChangeDatabaseUpdater()

eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::~ICacheChangeDatabaseUpdater ( )
protecteddefaultnoexcept

Protected destructor ownership defined on creation.

◆ ICacheChangeDatabaseUpdater() [1/3]

eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::ICacheChangeDatabaseUpdater ( )
protecteddefaultnoexcept

Default creation.

◆ ICacheChangeDatabaseUpdater() [2/3]

eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::ICacheChangeDatabaseUpdater ( const ICacheChangeDatabaseUpdater )
protecteddeletenoexcept

Copy deleted.

◆ ICacheChangeDatabaseUpdater() [3/3]

eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::ICacheChangeDatabaseUpdater ( ICacheChangeDatabaseUpdater &&  )
protecteddeletenoexcept

Movement deleted.

Member Function Documentation

◆ firsts_missing_fragments()

virtual ReturnCode eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::firsts_missing_fragments ( const SampleKey &  sample_key,
FragmentNumberSet &  fragments 
)
pure virtualnoexcept

Returns a FragmentNumberSet that contains at most the first 256 missing fragments.

Parameters
[in]sample_keySampleKey of the fragment.
[out]fragmentsfirsts missing fragments.
Returns
ReturnCode.

◆ notify_available_changes()

virtual void eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::notify_available_changes ( IReader &  reader,
const GUID writer_guid,
const SequenceNumber &  first,
const SequenceNumber &  last 
)
pure virtualnoexcept

Notify available changes from reader.

Parameters
[out]readerrelated reader.
writer_guidGUID of the writer to notify.
firstfirst sequence number (included).
lastlast sequence number (included).

◆ notify_unavailable_changes()

virtual void eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::notify_unavailable_changes ( IReader &  reader,
const GUID writer_guid,
const SequenceNumber &  first,
const SequenceNumber &  last 
)
pure virtualnoexcept

Notify unavailable changes from reader.

Parameters
[out]readerrelated reader.
writer_guidGUID of the writer to notify.
firstfirst sequence number unavailable (included).
lastlast sequence number unavailable (included).

◆ operator=() [1/2]

ICacheChangeDatabaseUpdater& eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::operator= ( const ICacheChangeDatabaseUpdater )
protecteddeletenoexcept

Copy operator deleted.

◆ operator=() [2/2]

ICacheChangeDatabaseUpdater& eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::operator= ( ICacheChangeDatabaseUpdater &&  )
protecteddeletenoexcept

Movement operator deleted.

◆ process_cache_change()

virtual void eprosima::safedds::protocol::ICacheChangeDatabaseUpdater::process_cache_change ( IReader &  reader,
const SampleKey &  sample_id,
const CacheChangeInfo &  change_info,
const FragmentInfo &  fragment_info,
const memory::IConstByteArrayView inline_qos,
const memory::IConstByteArrayView fragment_payload,
bool &  should_acknowledge_sample 
)
pure virtualnoexcept

Process a cache change.

Parameters
readerrelated reader.
sample_idcache change SampleKey identifier.
change_infocache change information.
fragment_infoinformation of payload fragmentation.
inline_qoscache change inline QoS.
fragment_payloadcache change fragmented payload.
[out]should_acknowledge_sampleshould acknowledge output flag.

The documentation for this class was generated from the following file: