.. _program_listing_file__tmp_ws_src_fastrtps_include_fastdds_dds_topic_IContentFilterFactory.hpp: Program Listing for File IContentFilterFactory.hpp ================================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/fastrtps/include/fastdds/dds/topic/IContentFilterFactory.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp // Copyright 2021 Proyectos y Sistemas de Mantenimiento SL (eProsima). // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. #ifndef _FASTDDS_DDS_TOPIC_ICONTENTFILTERFACTORY_HPP_ #define _FASTDDS_DDS_TOPIC_ICONTENTFILTERFACTORY_HPP_ #include #include #include #include #include namespace eprosima { namespace fastdds { namespace dds { struct IContentFilterFactory { using ReturnCode_t = eprosima::fastrtps::types::ReturnCode_t; using ParameterSeq = LoanableTypedCollection; using TypeDescriptor = eprosima::fastrtps::types::TypeDescriptor; 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; virtual ReturnCode_t delete_content_filter( const char* filter_class_name, IContentFilter* filter_instance) = 0; }; } // namespace dds } // namespace fastdds } // namespace eprosima #endif // _FASTDDS_DDS_TOPIC_ICONTENTFILTERFACTORY_HPP_