Fast DDS  Version 3.1.2
Fast DDS
Loading...
Searching...
No Matches
IContentFilterFactory Struct Referenceabstract

The interface that a factory of IContentFilter objects should implement. More...

#include <IContentFilterFactory.hpp>

Public Types

using ParameterSeq = LoanableTypedCollection<const char*>
 

Public Member Functions

virtual ReturnCode_t create_content_filter (const char *filter_class_name, const char *type_name, const TopicDataType *data_type, const char *filter_expression, const ParameterSeq &filter_parameters, IContentFilter *&filter_instance)=0
 Create or update an IContentFilter instance.
 
virtual ReturnCode_t delete_content_filter (const char *filter_class_name, IContentFilter *filter_instance)=0
 Delete an IContentFilter instance.
 

Detailed Description

The interface that a factory of IContentFilter objects should implement.

Member Typedef Documentation

◆ ParameterSeq

using ParameterSeq = LoanableTypedCollection<const char*>

Member Function Documentation

◆ create_content_filter()

virtual ReturnCode_t create_content_filter ( const char * filter_class_name,
const char * type_name,
const TopicDataType * data_type,
const char * filter_expression,
const ParameterSeq & filter_parameters,
IContentFilter *& filter_instance )
pure virtual

Create or update an IContentFilter instance.

Parameters
[in]filter_class_nameFilter class name for which the factory is being called. Allows using the same factory for different filter classes.
[in]type_nameType name of the topic being filtered.
[in]data_typeType support object of the topic being filtered.
[in]filter_expressionContent filter expression. May be nullptr when updating the parameters of a filter instance.
[in]filter_parametersValues to set for the filter parameters (n on the filter expression).
[in,out]filter_instanceWhen a filter is being created, it will be nullptr on input, and will have the pointer to the created filter instance on output. The caller takes ownership of the filter instance returned. When a filter is being updated, it will have a previously returned pointer on input. The method takes ownership of the filter instance during its execution, and can update the filter instance or even destroy it and create a new one. The caller takes ownership of the filter instance returned. It should always have a valid pointer upon return. The original state of the filter instance should be preserved when an error is returned.
Returns
A return code indicating the result of the operation.

◆ delete_content_filter()

virtual ReturnCode_t delete_content_filter ( const char * filter_class_name,
IContentFilter * filter_instance )
pure virtual

Delete an IContentFilter instance.

Parameters
[in]filter_class_nameFilter class name for which the factory is being called. Allows using the same factory for different filter classes.
[in]filter_instanceA pointer to a filter instance previously returned by create_content_filter. The factory takes ownership of the filter instance, and can decide to destroy it or keep it for future use. In case of deletion, note this pointer must be downcasted to the derived class.
Returns
A return code indicating the result of the operation.

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