static HANDLE_FUNC (handle_port) { set_int_arg (&conf->port, line, &match[2]); if (conf->port > 65535) { fprintf (stderr, "Bad port number (%d) supplied for Port.\n", conf->port); return 1; } return 0; }
void agent_act(unsigned char * img_bytes, int img_width, int img_height, bool_t img_is_belly, int pass_button, navdata_unpacked_t * navdata, commands_t * commands) { int k = 0; PyObject *pImageBytes = PyByteArray_FromStringAndSize((const char *)img_bytes, img_width*img_height*3); set_arg(pImageBytes, k++); set_int_arg(img_width, k++); set_int_arg(img_height, k++); set_int_arg(img_is_belly?1:0, k++); set_int_arg(pass_button, k++); navdata_demo_t demo = navdata->navdata_demo; set_int_arg(demo.ctrl_state, k++); set_int_arg(demo.vbat_flying_percentage, k++); set_float_arg(demo.theta, k++); set_float_arg(demo.phi, k++); set_float_arg(demo.psi, k++); set_int_arg(navdata->navdata_altitude.altitude_raw, k++); navdata_vision_raw_t vision_raw = navdata->navdata_vision_raw; set_float_arg(vision_raw.vision_tx_raw, k++); set_float_arg(vision_raw.vision_ty_raw, k++); PyObject * pResult = PyObject_CallObject(pFunc, pArgs); if (!pResult) { fun_error("Call failed\n", ""); } k = 0; commands->zap = get_int_result(pResult, k++); commands->phi = get_float_result(pResult, k++); commands->theta = get_float_result(pResult, k++); commands->gaz = get_float_result(pResult, k++); commands->yaw = get_float_result(pResult, k++); }
static HANDLE_FUNC (handle_timeout) { return set_int_arg (&conf->idletimeout, line, &match[2]); }