Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding content filter interfaces (#2359)
* Adding content filter interfaces (#2286) * Refs 12663. Adding ContentFilteredTopic header. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Adding ContentFilteredTopic basic code. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Moving code to DomainParticipantImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Adding filtered_topics_ to DomainParticipantImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Implementing create_contentfilteredtopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Implementing delete_contentfilteredtopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. ContentFilteredTopicImpl moved to its own header. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. ContentFilteredTopicImpl implements IReaderDataFilter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Adding data_filter_ to RTPSReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Link filter on RTPS reader creation. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Filtering data on StatefulReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Filtering data on StatelessReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Fixed unit test build error. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Use topic name from related topic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adding filter_name. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adding content filter interfaces. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Using IContentFilterFactory. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adding get_descriptor to type support. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Use filter factory and instance on ContentFilteredTopicImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Moved IReaderDataFilter to base rtps folder. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Added custom filter interfaces to DomainParticipant. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Added DynamicPubSubType::get_descriptor. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Linters. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12663. Fixed warning Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Add reader_guid to IContentFilter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Fix method names, Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Use constexpr for default filter name. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Fix warnings. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Include what you use on DomainParticipant.hpp. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adressed some review comments on DomainParticipant. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. More review comments addressed. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Custom filter methods renamed. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Add implementation for create_contentfilteredtopic overload. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Fail when filter_name is nullptr. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Parameter filter_name renamed to filter_class_name. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Fixing build of statistics tests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Add get_content_filter to RTPSReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. IReaderDataFilter.hpp moved to interfaces folder. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adding some error messages. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Allowing a factory to manage several filter classes. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adding empty implementation of custom factory registry methods. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Adding implementation of custom factory registry methods. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Lookup factory on create_contentfilteredtopic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Apply suggestions from code review Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com> * Refs 12540. Suggestions on ContentFilteredTopic header. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Add alias for GUID_t on IContentFilter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Additional RETCODE_PRECONDITION_NOT_MET on register_content_filter_factory doxydoc. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Interfaces don't have destructors. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Apply suggestions from code review Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com> * Updating content filter interfaces (#2351) * Refs 12540. Update IContentFilterFactory::create_content_filter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Use updated IContentFilterFactory::create_content_filter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Rename parameter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 12540. Remove get_descriptor() from TopicDataType. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added new test to ParticipantTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added negative tests for create/delete contentfilteredtopic Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added custom filter mock class. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added negative tests for register_content_filter_factory. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Check for nullptr on register_content_filter_factory. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added negative tests for lookup_content_filter_factory. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added negative tests for unregister_content_filter_factory. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added tests for custom filter factory registration. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added tests for custom filtered topic creation. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Fixed generation of filter_parameters. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added more checks on tests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added second participant and topic. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added cross-participant checks. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Added lookup_topicdescription checks. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Avoid deleting the same entity twice. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. No need to check participant (implicit check when not found in collection) Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Fixed link issues on unit tests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Linters. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 13290. Additional checks to ensure collection traversal. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com>
- Loading branch information