[SOLVED]ROS
Posted: Fri Jun 23, 2017 9:44 pm
The following is a piece of code from crazyflie_ros package (crazyflie_add.cpp):
Can someone please explain what is happening. I am new to ROS and unable to decipher what's happening here. Especially the condition What is the need for this?
Thank you in advance.
Code: Select all
std::vector<std::string> genericLogTopics;
n.param("genericLogTopics", genericLogTopics, std::vector<std::string>());
std::vector<int> genericLogTopicFrequencies;
n.param("genericLogTopicFrequencies", genericLogTopicFrequencies, std::vector<int>());
if (genericLogTopics.size() == genericLogTopicFrequencies.size())
{
size_t i = 0;
for (auto& topic : genericLogTopics)
{
crazyflie_driver::LogBlock logBlock;
logBlock.topic_name = topic;
logBlock.frequency = genericLogTopicFrequencies[i];
n.getParam("genericLogTopic_" + topic + "_Variables", logBlock.variables);
addCrazyflie.request.log_blocks.push_back(logBlock);
++i;
}
}
else
{
ROS_ERROR("Cardinality of genericLogTopics and genericLogTopicFrequencies does not match!");
}
Code: Select all
genericLogTopics.size() == genericLogTopicFrequencies.size()
Thank you in advance.