@@ -118,21 +118,27 @@ auto IKController::configure_parameters() -> controller_interface::CallbackRetur
118
118
return std::ranges::find (interfaces, type) != interfaces.end ();
119
119
};
120
120
121
- auto count_interfaces = [](bool use_interface, const std::vector<std::string> & interface_names, std::size_t & n) {
122
- n += use_interface ? interface_names.size () : 0 ;
123
- };
124
-
125
121
use_position_commands_ = has_interface (params_.command_interfaces , " position" );
126
122
use_velocity_commands_ = has_interface (params_.command_interfaces , " velocity" );
127
123
128
- count_interfaces (use_position_commands_, position_interface_names_, n_command_interfaces_);
129
- count_interfaces (use_velocity_commands_, velocity_interface_names_, n_command_interfaces_);
124
+ n_command_interfaces_ = 0 ;
125
+ if (use_position_commands_) {
126
+ n_command_interfaces_ += position_interface_names_.size ();
127
+ }
128
+ if (use_velocity_commands_) {
129
+ n_command_interfaces_ += velocity_interface_names_.size ();
130
+ }
130
131
131
132
use_position_states_ = has_interface (params_.state_interfaces , " position" );
132
133
use_velocity_states_ = has_interface (params_.state_interfaces , " velocity" );
133
134
134
- count_interfaces (use_position_states_, position_interface_names_, n_state_interfaces_);
135
- count_interfaces (use_velocity_states_, velocity_interface_names_, n_state_interfaces_);
135
+ n_state_interfaces_ = 0 ;
136
+ if (use_position_states_) {
137
+ n_state_interfaces_ += position_interface_names_.size ();
138
+ }
139
+ if (use_velocity_states_) {
140
+ n_state_interfaces_ += velocity_interface_names_.size ();
141
+ }
136
142
137
143
return controller_interface::CallbackReturn::SUCCESS;
138
144
}
0 commit comments