// get values from the sensors and publish it if needed for each active topic void RosSensor::publishValues(int step) { for (unsigned int i = 0; i < mPublishList.size(); ++i) { if (step % mPublishList[i].mSamplingPeriod == 0) { if (mPublishList[i].mPublisher.getNumSubscribers() > 0) { if (mPublishList[i].mNewPublisher) mPublishList[i].mNewPublisher = false; // publish the values from the corresponding device publishValue(mPublishList[i].mPublisher); } publishAuxiliaryValue(); } } }
void CtrlDX::buttonClicked(Button *button) { publishValue((int) button->getToggleState()); }
void CtrlDX::comboBoxChanged(ComboBox* combo) { publishValue(combo->getSelectedId() - 1); }
void CtrlDX::sliderValueChanged(Slider* moved) { publishValue(((int) moved->getValue() - displayValue)); }
void Ctrl::comboBoxChanged(ComboBox* combo) { publishValue((combo->getSelectedId() - 1) / combo->getNumItems()); }
void Ctrl::buttonClicked(Button* clicked) { publishValue(clicked->getToggleState()); }
void Ctrl::sliderValueChanged(Slider* moved) { publishValue(moved->getValue()); }