@@ -74,7 +74,9 @@ class CommonWriter : public BaseWriter
7474 * @pre this method can only be called once.
7575 */
7676 DDSPIPE_PARTICIPANTS_DllAPI
77- void init ();
77+ void init (
78+ const std::set<std::string>& partitions_set,
79+ const std::string& content_topicfilter_expression);
7880
7981 // ///////////////////
8082 // STATIC ATTRIBUTES
@@ -164,7 +166,17 @@ class CommonWriter : public BaseWriter
164166 eprosima::fastdds::rtps::WriteParams& to_send_params,
165167 const core::types::RtpsPayloadData& data) const noexcept ;
166168
169+ // ! Update method to change the partitions in the content_topicfilter
170+ DDSPIPE_PARTICIPANTS_DllAPI
171+ virtual void update_partitions (
172+ const std::set<std::string>& partitions_set) override ;
173+
174+ // ! Update method to change the expression in the content_topicfilter
175+ DDSPIPE_PARTICIPANTS_DllAPI
176+ virtual void update_content_topic_filter (
177+ const std::string& expression) override ;
167178
179+ // ! Update method to change the topic_partitions
168180 DDSPIPE_PARTICIPANTS_DllAPI
169181 virtual void update_topic_partitions (
170182 const std::map<std::string, std::string>& partition_name) override ;
@@ -184,6 +196,7 @@ class CommonWriter : public BaseWriter
184196 std::shared_ptr<core::PayloadPoolMediator> payload_pool_;
185197
186198 core::types::DdsTopic topic_;
199+ eprosima::fastdds::dds::ContentFilteredTopic* filtered_topic_;
187200
188201 fastdds::dds::Publisher* dds_publisher_;
189202 fastdds::dds::DataWriter* writer_;
0 commit comments