Class astutedds::dcps::WriterFilterManager

ClassList > astutedds > dcps > WriterFilterManager

Manages content filters for a data writer. More...

  • #include <writer_filter.hpp>

Classes

Type Name
struct Stats
Get filtering statistics.

Public Functions

Type Name
WriterFilterManager (FieldAccessor field_accessor)
Construct filter manager.
WriterFilterManager (const WriterFilterManager &) = delete
size_t filter_count () const
Get number of registered filters.
std::vector< rtps::GUID_t > get_matching_readers (const void * data) const
Get readers that should receive data sample.
Stats get_stats () const
bool has_filters () const
Check if any filters are registered.
bool is_enabled () const
WriterFilterManager & operator= (const WriterFilterManager &) = delete
void register_reader_filter (const ReaderFilterInfo & info)
Register a reader's filter.
void set_enabled (bool enabled)
Enable/disable writer-side filtering.
bool should_send_to_reader (const rtps::GUID_t & reader_guid, const void * data) const
Check if specific reader should receive data.
void unregister_reader_filter (const rtps::GUID_t & reader_guid)
Unregister a reader's filter.
bool update_filter_parameters (const rtps::GUID_t & reader_guid, const std::vector< std::string > & parameters)
Update a reader's filter parameters.
~WriterFilterManager ()

Detailed Description

Tracks filters from matched readers and evaluates them before sending data.

Public Functions Documentation

function WriterFilterManager [1/2]

Construct filter manager.

explicit astutedds::dcps::WriterFilterManager::WriterFilterManager (
    FieldAccessor field_accessor
) 

Parameters:

  • field_accessor Function to extract field values from data

function WriterFilterManager [2/2]

astutedds::dcps::WriterFilterManager::WriterFilterManager (
    const WriterFilterManager &
) = delete

function filter_count

Get number of registered filters.

size_t astutedds::dcps::WriterFilterManager::filter_count () const


function get_matching_readers

Get readers that should receive data sample.

std::vector< rtps::GUID_t > astutedds::dcps::WriterFilterManager::get_matching_readers (
    const void * data
) const

Parameters:

  • data Pointer to data sample

Returns:

List of reader GUIDs that pass the filter


function get_stats

Stats astutedds::dcps::WriterFilterManager::get_stats () const

function has_filters

Check if any filters are registered.

bool astutedds::dcps::WriterFilterManager::has_filters () const


function is_enabled

inline bool astutedds::dcps::WriterFilterManager::is_enabled () const

function operator=

WriterFilterManager & astutedds::dcps::WriterFilterManager::operator= (
    const WriterFilterManager &
) = delete

function register_reader_filter

Register a reader's filter.

void astutedds::dcps::WriterFilterManager::register_reader_filter (
    const ReaderFilterInfo & info
) 

Parameters:

  • info Reader filter information

function set_enabled

Enable/disable writer-side filtering.

void astutedds::dcps::WriterFilterManager::set_enabled (
    bool enabled
) 


function should_send_to_reader

Check if specific reader should receive data.

bool astutedds::dcps::WriterFilterManager::should_send_to_reader (
    const rtps::GUID_t & reader_guid,
    const void * data
) const

Parameters:

  • reader_guid Reader GUID
  • data Pointer to data sample

Returns:

true if reader should receive data


function unregister_reader_filter

Unregister a reader's filter.

void astutedds::dcps::WriterFilterManager::unregister_reader_filter (
    const rtps::GUID_t & reader_guid
) 

Parameters:

  • reader_guid GUID of the reader

function update_filter_parameters

Update a reader's filter parameters.

bool astutedds::dcps::WriterFilterManager::update_filter_parameters (
    const rtps::GUID_t & reader_guid,
    const std::vector< std::string > & parameters
) 

Parameters:

  • reader_guid GUID of the reader
  • parameters New parameter values

Returns:

true if updated successfully


function ~WriterFilterManager

astutedds::dcps::WriterFilterManager::~WriterFilterManager () 


The documentation for this class was generated from the following file include/astutedds/dcps/writer_filter.hpp