Skip to content

Commit fc6403b

Browse files
Refactor API params grouped
Signed-off-by: Eugenio Collado <eugeniocollado@eprosima.com>
1 parent c3279cb commit fc6403b

10 files changed

Lines changed: 189 additions & 293 deletions

File tree

ddsenabler/examples/action/main.cpp

Lines changed: 36 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -120,39 +120,22 @@ static void test_data_notification_callback(
120120
// Static topic notification callback
121121
static void test_topic_notification_callback(
122122
const char* topic_name,
123-
const char* type_name,
124-
const char* serialized_qos)
123+
const eprosima::ddsenabler::participants::TopicInfo& topic_info)
125124
{
126125
}
127126

128127
// Static type query callback
129128
static bool test_topic_query_callback(
130129
const char* topic_name,
131-
std::string& type_name,
132-
std::string& serialized_qos)
130+
eprosima::ddsenabler::participants::TopicInfo& topic_info)
133131
{
134132
return false;
135133
}
136134

137135
// Static action notification callback
138136
static void test_action_notification_callback(
139137
const char* action_name,
140-
const char* goal_request_action_type,
141-
const char* goal_reply_action_type,
142-
const char* cancel_request_action_type,
143-
const char* cancel_reply_action_type,
144-
const char* result_request_action_type,
145-
const char* result_reply_action_type,
146-
const char* feedback_action_type,
147-
const char* status_action_type,
148-
const char* goal_request_action_serialized_qos,
149-
const char* goal_reply_action_serialized_qos,
150-
const char* cancel_request_action_serialized_qos,
151-
const char* cancel_reply_action_serialized_qos,
152-
const char* result_request_action_serialized_qos,
153-
const char* result_reply_action_serialized_qos,
154-
const char* feedback_action_serialized_qos,
155-
const char* status_action_serialized_qos)
138+
const eprosima::ddsenabler::participants::ActionInfo& action_info)
156139
{
157140
std::lock_guard<std::mutex> lock(app_mutex_);
158141
if (config.action_name == std::string(action_name))
@@ -168,22 +151,22 @@ static void test_action_notification_callback(
168151
utils::save_action_to_file(
169152
action_file,
170153
action_name,
171-
goal_request_action_type,
172-
goal_reply_action_type,
173-
cancel_request_action_type,
174-
cancel_reply_action_type,
175-
result_request_action_type,
176-
result_reply_action_type,
177-
feedback_action_type,
178-
status_action_type,
179-
goal_request_action_serialized_qos,
180-
goal_reply_action_serialized_qos,
181-
cancel_request_action_serialized_qos,
182-
cancel_reply_action_serialized_qos,
183-
result_request_action_serialized_qos,
184-
result_reply_action_serialized_qos,
185-
feedback_action_serialized_qos,
186-
status_action_serialized_qos);
154+
action_info.goal.request.type_name.c_str(),
155+
action_info.goal.reply.type_name.c_str(),
156+
action_info.cancel.request.type_name.c_str(),
157+
action_info.cancel.reply.type_name.c_str(),
158+
action_info.result.request.type_name.c_str(),
159+
action_info.result.reply.type_name.c_str(),
160+
action_info.feedback.type_name.c_str(),
161+
action_info.status.type_name.c_str(),
162+
action_info.goal.request.serialized_qos.c_str(),
163+
action_info.goal.reply.serialized_qos.c_str(),
164+
action_info.cancel.request.serialized_qos.c_str(),
165+
action_info.cancel.reply.serialized_qos.c_str(),
166+
action_info.result.request.serialized_qos.c_str(),
167+
action_info.result.reply.serialized_qos.c_str(),
168+
action_info.feedback.serialized_qos.c_str(),
169+
action_info.status.serialized_qos.c_str());
187170

188171
action_discovered_ = true;
189172
app_cv_.notify_all();
@@ -198,22 +181,7 @@ static void test_action_notification_callback(
198181
// Static action query callback
199182
static bool test_action_query_callback(
200183
const char* action_name,
201-
std::string& goal_request_action_type,
202-
std::string& goal_reply_action_type,
203-
std::string& cancel_request_action_type,
204-
std::string& cancel_reply_action_type,
205-
std::string& result_request_action_type,
206-
std::string& result_reply_action_type,
207-
std::string& feedback_action_type,
208-
std::string& status_action_type,
209-
std::string& goal_request_action_serialized_qos,
210-
std::string& goal_reply_action_serialized_qos,
211-
std::string& cancel_request_action_serialized_qos,
212-
std::string& cancel_reply_action_serialized_qos,
213-
std::string& result_request_action_serialized_qos,
214-
std::string& result_reply_action_serialized_qos,
215-
std::string& feedback_action_serialized_qos,
216-
std::string& status_action_serialized_qos)
184+
eprosima::ddsenabler::participants::ActionInfo& action_info)
217185
{
218186
std::lock_guard<std::mutex> lock(app_mutex_);
219187
if (config.action_name == std::string(action_name))
@@ -229,22 +197,22 @@ static bool test_action_query_callback(
229197
if (!utils::load_action_from_file(
230198
action_file,
231199
action_name,
232-
goal_request_action_type,
233-
goal_reply_action_type,
234-
cancel_request_action_type,
235-
cancel_reply_action_type,
236-
result_request_action_type,
237-
result_reply_action_type,
238-
feedback_action_type,
239-
status_action_type,
240-
goal_request_action_serialized_qos,
241-
goal_reply_action_serialized_qos,
242-
cancel_request_action_serialized_qos,
243-
cancel_reply_action_serialized_qos,
244-
result_request_action_serialized_qos,
245-
result_reply_action_serialized_qos,
246-
feedback_action_serialized_qos,
247-
status_action_serialized_qos))
200+
action_info.goal.request.type_name,
201+
action_info.goal.reply.type_name,
202+
action_info.cancel.request.type_name,
203+
action_info.cancel.reply.type_name,
204+
action_info.result.request.type_name,
205+
action_info.result.reply.type_name,
206+
action_info.feedback.type_name,
207+
action_info.status.type_name,
208+
action_info.goal.request.serialized_qos,
209+
action_info.goal.reply.serialized_qos,
210+
action_info.cancel.request.serialized_qos,
211+
action_info.cancel.reply.serialized_qos,
212+
action_info.result.request.serialized_qos,
213+
action_info.result.reply.serialized_qos,
214+
action_info.feedback.serialized_qos,
215+
action_info.status.serialized_qos))
248216
{
249217
std::cerr << "Failed to load action: " << action_name << std::endl;
250218
return false;

ddsenabler/examples/publish/main.cpp

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -125,19 +125,18 @@ static bool test_type_query_callback(
125125
// Static topic notification callback
126126
static void test_topic_notification_callback(
127127
const char* topic_name,
128-
const char* type_name,
129-
const char* serialized_qos)
128+
const eprosima::ddsenabler::participants::TopicInfo& topic_info)
130129
{
131130
bool notify = false;
132131
{
133132
std::lock_guard<std::mutex> lock(app_mutex_);
134133
notify = ++received_topics_ >= config.expected_topics;
135-
std::cout << "Topic callback received: " << topic_name << " of type " << type_name << ", Total topics: " <<
136-
received_topics_ << std::endl << serialized_qos << std::endl << std::endl;
134+
std::cout << "Topic callback received: " << topic_name << " of type " << topic_info.type_name << ", Total topics: " <<
135+
received_topics_ << std::endl << topic_info.serialized_qos << std::endl << std::endl;
137136
if (!config.persistence_path.empty() &&
138137
!utils::save_topic_to_file((std::filesystem::path(config.persistence_path) / TOPICS_SUBDIR).string(),
139138
topic_name,
140-
type_name, serialized_qos))
139+
topic_info.type_name.c_str(), topic_info.serialized_qos.c_str()))
141140
{
142141
std::cerr << "Failed to save topic: " << topic_name << std::endl;
143142
}
@@ -151,8 +150,7 @@ static void test_topic_notification_callback(
151150
// Static type query callback
152151
static bool test_topic_query_callback(
153152
const char* topic_name,
154-
std::string& type_name,
155-
std::string& serialized_qos)
153+
eprosima::ddsenabler::participants::TopicInfo& topic_info)
156154
{
157155
if (config.persistence_path.empty())
158156
{
@@ -162,8 +160,8 @@ static bool test_topic_query_callback(
162160

163161
// Load the topic from file
164162
if (!utils::load_topic_from_file((std::filesystem::path(config.persistence_path) / TOPICS_SUBDIR).string(), topic_name,
165-
type_name,
166-
serialized_qos))
163+
topic_info.type_name,
164+
topic_info.serialized_qos))
167165
{
168166
std::cerr << "Failed to load topic: " << topic_name << std::endl;
169167
return false;

ddsenabler/examples/service/main.cpp

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -120,27 +120,22 @@ static void test_data_notification_callback(
120120
// Static topic notification callback
121121
static void test_topic_notification_callback(
122122
const char* topic_name,
123-
const char* type_name,
124-
const char* serialized_qos)
123+
const eprosima::ddsenabler::participants::TopicInfo& topic_info)
125124
{
126125
}
127126

128127
// Static type query callback
129128
static bool test_topic_query_callback(
130129
const char* topic_name,
131-
std::string& type_name,
132-
std::string& serialized_qos)
130+
eprosima::ddsenabler::participants::TopicInfo& topic_info)
133131
{
134132
return false;
135133
}
136134

137135
// Static service notification callback
138136
static void test_service_notification_callback(
139137
const char* service_name,
140-
const char* request_type_name,
141-
const char* reply_type_name,
142-
const char* request_serialized_qos,
143-
const char* reply_serialized_qos)
138+
const eprosima::ddsenabler::participants::ServiceInfo& service_info)
144139
{
145140
std::lock_guard<std::mutex> lock(app_mutex_);
146141
if (config.service_name == std::string(service_name))
@@ -155,10 +150,10 @@ static void test_service_notification_callback(
155150
utils::save_service_to_file(
156151
service_file,
157152
service_name,
158-
request_type_name,
159-
reply_type_name,
160-
request_serialized_qos,
161-
reply_serialized_qos);
153+
service_info.request.type_name.c_str(),
154+
service_info.reply.type_name.c_str(),
155+
service_info.request.serialized_qos.c_str(),
156+
service_info.reply.serialized_qos.c_str());
162157

163158
service_discovered_ = true;
164159
app_cv_.notify_all();
@@ -173,10 +168,7 @@ static void test_service_notification_callback(
173168
// Static service query callback
174169
static bool test_service_query_callback(
175170
const char* service_name,
176-
std::string& request_type_name,
177-
std::string& request_serialized_qos,
178-
std::string& reply_type_name,
179-
std::string& reply_serialized_qos)
171+
eprosima::ddsenabler::participants::ServiceInfo& service_info)
180172
{
181173
std::lock_guard<std::mutex> lock(app_mutex_);
182174

@@ -197,10 +189,10 @@ static bool test_service_query_callback(
197189
if (utils::load_service_from_file(
198190
service_file,
199191
service_name,
200-
request_type_name,
201-
reply_type_name,
202-
request_serialized_qos,
203-
reply_serialized_qos))
192+
service_info.request.type_name,
193+
service_info.reply.type_name,
194+
service_info.request.serialized_qos,
195+
service_info.reply.serialized_qos))
204196
{
205197
app_cv_.notify_all();
206198
return true;

ddsenabler/test/DDSEnablerTester.hpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -299,8 +299,7 @@ class DDSEnablerTester : public ::testing::Test
299299
// eprosima::ddsenabler::participants::DdsTopicNotification topic_notification
300300
static void test_topic_notification_callback(
301301
const char* topic_name,
302-
const char* type_name,
303-
const char* serialized_qos)
302+
const eprosima::ddsenabler::participants::TopicInfo& topic_info)
304303
{
305304
if (current_test_instance_)
306305
{
@@ -315,8 +314,7 @@ class DDSEnablerTester : public ::testing::Test
315314
// eprosima::ddsenabler::participants::DdsTopicQuery topic_query;
316315
static bool test_topic_query_callback(
317316
const char* topic_name,
318-
std::string& type_name,
319-
std::string& serialized_qos)
317+
eprosima::ddsenabler::participants::TopicInfo& topic_info)
320318
{
321319
return false;
322320
}

ddsenabler/test/ddsEnablerTests/ReloadConfig.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
#include <gtest/gtest.h>
1717

1818
#include "dds_enabler_runner.hpp"
19+
#include "ddsenabler_participants/Callbacks.hpp"
1920

2021
#include <filesystem>
2122
#include <fstream>
@@ -47,16 +48,14 @@ void test_type_notification_callback(
4748
// eprosima::ddsenabler::participants::DdsTopicNotification topic_notification;
4849
void test_topic_notification_callback(
4950
const char* topic_name,
50-
const char* type_name,
51-
const char* serialized_qos)
51+
const eprosima::ddsenabler::participants::TopicInfo& topic_info)
5252
{
5353
}
5454

5555
// eprosima::ddsenabler::participants::DdsTopicQuery topic_query;
5656
bool test_topic_query_callback(
5757
const char* topic_name,
58-
std::string& type_name,
59-
std::string& serialized_qos)
58+
eprosima::ddsenabler::participants::TopicInfo& topic_info)
6059
{
6160
return false;
6261
}

0 commit comments

Comments
 (0)