void GuiInterface::stop() { qDebug("GuiInterface thread stopped"); stoppedConsumer = true; rcmIfClose(); }
void RefInterface::stop() { //stop ref thread so consumer can grab info qDebug("Reference thread stopped"); // stopped = false; stopped = true; rcmIfClose(); }
int main(int argc, char **argv) { ros::init(argc, argv, "reset"); ros::NodeHandle nh("~"); // parameters int node_id; std::string dev_path; nh.param("node_id", node_id, 100); nh.param("dev_path", dev_path, std::string("/dev/ttyACM0")); int r; // initialize interface r = rcmIfInit(rcmIfUsb, (char*) dev_path.c_str()); error_check(r, "Initialization Failed"); // put in idle mode during configuration r = rcmSleepModeSet(RCM_SLEEP_MODE_IDLE); error_check(r, "Time out waiting for sleep mode set"); // make sure correct internal opmode is set r = rcmOpModeSet(RCM_OPMODE_RCM); error_check(r, "Timeout waiting for opmode set"); // execute Built-In Test int status; r = rcmBit(&status); error_check(r, "Timeout waiting for test"); error_check(status, "Built-In Test Failed"); // get status information rcmMsg_GetStatusInfoConfirm statusInfo; r = rcmStatusInfoGet(&statusInfo); error_check(r, "Timeout waiting for status information"); print_status(&statusInfo); // get configuration from RCM rcmConfiguration config; r = rcmConfigGet(&config); error_check(r, "Timeout waiting for configuration"); print_configuration(&config); // default configuration config.nodeId = node_id; config.integrationIndex = 7; config.codeChannel = 0; config.electricalDelayPsA = 0; config.electricalDelayPsB = 0; config.flags = 0; config.txGain = RCM_TXGAIN_MAX; config.persistFlag = RCM_PERSIST_ALL; r = rcmConfigSet(&config); error_check(r, "Time out waiting for rcmConfig confirm"); print_configuration(&config); // cleanup rcmIfFlush(); rcmIfClose(); }