diff --git a/include/fastdds/dds/subscriber/DataReader.hpp b/include/fastdds/dds/subscriber/DataReader.hpp index c72c96f0b42..c64a7541b44 100644 --- a/include/fastdds/dds/subscriber/DataReader.hpp +++ b/include/fastdds/dds/subscriber/DataReader.hpp @@ -765,6 +765,15 @@ class DataReader : public DomainEntity RTPS_DllAPI ReturnCode_t get_first_untaken_info( SampleInfo* info); + /** + * Get the number of samples pending to be read. + * The number includes samples that may not yet be available to be read or taken by the user, due to samples + * being received out of order. + * + * @return the number of samples on the reader history that have never been read. + */ + RTPS_DllAPI uint64_t get_unread_count() const; + /** * Get associated GUID. * diff --git a/src/cpp/fastdds/subscriber/DataReader.cpp b/src/cpp/fastdds/subscriber/DataReader.cpp index da83cc7b09c..e8be250bfde 100644 --- a/src/cpp/fastdds/subscriber/DataReader.cpp +++ b/src/cpp/fastdds/subscriber/DataReader.cpp @@ -252,6 +252,11 @@ ReturnCode_t DataReader::get_first_untaken_info( return impl_->get_first_untaken_info(info); } +uint64_t DataReader::get_unread_count() const +{ + return impl_->get_unread_count(); +} + const GUID_t& DataReader::guid() { return impl_->guid();