|
| 1 | +#include <time.h> |
| 2 | + |
| 3 | + |
| 4 | +typedef struct GlassRacingChnlUI GlassRacingChnlUI, *PGlassRacingChnlUI; |
| 5 | +typedef struct GlassRacingChnlUI GlassRacingChnlUI_t; |
| 6 | + |
| 7 | +struct GlassRacingChnlUI { |
| 8 | + char dummy[0x4a0]; |
| 9 | + float gs_voltage; |
| 10 | + char dummy2[0xa]; |
| 11 | + uint16_t gs_bitrate; |
| 12 | + char dummy3[0x200]; //ends at 0x6b0 |
| 13 | + |
| 14 | +}__attribute__((packed, aligned(1))); |
| 15 | + |
| 16 | +static GlassRacingChnlUI *chnl_ui; |
| 17 | + |
| 18 | +typedef enum gs_link_stat_t { |
| 19 | + GS_LINK_STAT_NORMAL=0, |
| 20 | + GS_LINK_STAT_WEAK=1, |
| 21 | + GS_LINK_STAT_LOST=2, |
| 22 | + GS_LINK_STAT_UKNOWN=3 |
| 23 | +} gs_link_stat_t; |
| 24 | + |
| 25 | +typedef enum Record_sender { |
| 26 | + RECORD_BUTTON=0, |
| 27 | + RECORD_DISARM=1 |
| 28 | +} Record_sender; |
| 29 | + |
| 30 | +typedef enum record_state { |
| 31 | + RECORD_STATE_IDLE=0, |
| 32 | + RECORD_STATE_RECORDING=1, |
| 33 | + RECORD_STATE_STOP_ERROR=2, |
| 34 | + RECORD_STATE_STOP_FULL=3, |
| 35 | + RECORD_STATE_STOP_WRITE_SLOW=4, |
| 36 | + RECORD_STATE_STARTING=5, |
| 37 | + RECORD_STATE_STOPPING=6 |
| 38 | +} record_state; |
| 39 | + |
| 40 | +typedef enum record_state record_state_t; |
| 41 | + |
| 42 | +typedef struct __gs_queue __gs_queue, *P__gs_queue; |
| 43 | +typedef struct __gs_queue gs_queue_t; |
| 44 | + |
| 45 | +struct __gs_queue { |
| 46 | + uint32_t * addr; |
| 47 | + uint32_t size; |
| 48 | + uint32_t num; |
| 49 | + uint32_t writer; |
| 50 | + uint32_t reader; |
| 51 | +}; |
| 52 | + |
| 53 | +typedef struct __gs_gui_config __gs_gui_config, *P__gs_gui_config; |
| 54 | +typedef struct __gs_gui_config gs_gui_config_t; |
| 55 | + |
| 56 | +struct __gs_gui_config { |
| 57 | + gs_queue_t * osd_gen_data_queue; |
| 58 | + gs_queue_t * osd_home_data_queue; |
| 59 | + gs_queue_t * file_del_queue; |
| 60 | + gs_queue_t * camera_stat_queue; |
| 61 | + gs_queue_t * camera_cap_param_queue; |
| 62 | + gs_queue_t * camera_pb_param_queue; |
| 63 | + gs_queue_t * camera_file_info_queue; |
| 64 | + gs_queue_t * camera_dcf_abstract_queue; |
| 65 | + gs_queue_t * camera_fov_param_queue; |
| 66 | + gs_queue_t * rc_bat_stat_queue; |
| 67 | + gs_queue_t * signal_quality_queue; |
| 68 | + gs_queue_t * uav_bat_common_info_queue; |
| 69 | + gs_queue_t * sdr_wl_env_queue; |
| 70 | + gs_queue_t * sdr_uav_data_queue; |
| 71 | + gs_queue_t * sdr_gnd_data_queue; |
| 72 | + gs_queue_t * rc_param_queue; |
| 73 | + gs_queue_t * rc_pushed_gps_queue; |
| 74 | + gs_queue_t * racing_drone_fc_osd_queue; |
| 75 | + bool * touchpadLockState; |
| 76 | + void * gs_info; |
| 77 | + int (* gs_ext_fc_get_craft_name)(void *ctx,char *craft_name); |
| 78 | + int (* gs_ext_fc_get_pid)(void *ctx,uint8_t type,uint8_t *value); |
| 79 | + int (* gs_ext_fc_get_rate)(void *ctx,uint8_t type,uint8_t *value); |
| 80 | + int (* gs_ext_fc_get_osd_profile_index)(void *ctx,uint8_t *osd_index); |
| 81 | + int (* gs_ext_fc_select_file)(void *ctx,uint8_t type,uint8_t index); |
| 82 | + int (* gs_ext_fc_copy_file)(void *ctx,uint8_t type,uint8_t src_index,uint8_t dst_index); |
| 83 | + int (* gs_ext_fc_write_eeprom)(void *ctx); |
| 84 | + int (* gs_ext_fc_get_rc_channel)(void *ctx,uint8_t chnl_index,uint16_t *value); |
| 85 | + int (* gs_ext_fc_get_aux_mode_id_by_index)(void *ctx,uint8_t *aux_id,uint8_t aux_index,uint8_t *start_step,uint8_t *end_step); |
| 86 | + int (* gs_ext_fc_get_aux_mode)(void *ctx,uint8_t aux_id,uint8_t *aux_index,uint8_t *start_step,uint8_t *end_step); |
| 87 | + int (* gs_ext_fc_set_aux_mode)(void *ctx,uint8_t aux_id,uint8_t aux_index,uint8_t start_step,uint8_t end_step); |
| 88 | + int (* gs_ext_fc_set_request_type)(void *ctx,uint8_t type); |
| 89 | + int (* gs_ext_fc_get_request_type)(void *ctx,uint8_t *type); |
| 90 | + int (* gs_ext_fc_get_ag_gain)(void *ctx,uint16_t *ag_gain); |
| 91 | + int (* gs_ext_fc_set_ag_gain)(void *ctx,uint16_t ag_gain); |
| 92 | + int (* gs_ext_fc_get_ag_thr)(void *ctx,uint16_t *thr); |
| 93 | + int (* gs_ext_fc_set_ag_thr)(void *ctx,uint16_t thr); |
| 94 | + int (* gs_ext_fc_get_thr_boost)(void *ctx,uint8_t *boost); |
| 95 | + int (* gs_ext_fc_set_thr_boost)(void *ctx,uint8_t boost); |
| 96 | + int (* gs_ext_fc_get_ff_trans)(void *ctx,uint8_t *ff_trans); |
| 97 | + int (* gs_ext_fc_set_ff_trans)(void *ctx,uint8_t ff_trans); |
| 98 | + int (* gs_ext_fc_get_filter)(void *ctx,uint8_t filter_type,uint16_t *value); |
| 99 | + int (* gs_ext_fc_set_filter)(void *ctx,uint8_t filter_type,uint16_t value); |
| 100 | + int (* gs_ext_fc_get_rate_profile_index)(void *ctx,uint8_t *rate_index); |
| 101 | + int (* gs_ext_fc_set_rate)(void *ctx,uint8_t type,uint8_t value); |
| 102 | + int (* gs_ext_fc_get_super_rate)(void *ctx,uint8_t type,uint8_t *value); |
| 103 | + int (* gs_ext_fc_set_super_rate)(void *ctx,uint8_t type,uint8_t value); |
| 104 | + int (* gs_ext_fc_get_expo)(void *ctx,uint8_t type,uint8_t *value); |
| 105 | + int (* gs_ext_fc_set_expo)(void *ctx,uint8_t type,uint8_t value); |
| 106 | + int (* gs_ext_fc_get_dyn_thr)(void *ctx,uint8_t *value); |
| 107 | + int (* gs_ext_fc_set_dyn_thr)(void *ctx,uint8_t value); |
| 108 | + int (* gs_ext_fc_get_thr_mid)(void *ctx,uint8_t *value); |
| 109 | + int (* gs_ext_fc_set_thr_mid)(void *ctx,uint8_t value); |
| 110 | + int (* gs_ext_fc_get_thr_expo)(void *ctx,uint8_t *value); |
| 111 | + int (* gs_ext_fc_set_thr_expo)(void *ctx,uint8_t value); |
| 112 | + int (* gs_ext_fc_get_tpa)(void *ctx,uint16_t *value); |
| 113 | + int (* gs_ext_fc_set_tpa)(void *ctx,uint16_t value); |
| 114 | + int (* gs_ext_fc_get_pid_f)(void *ctx,uint8_t type,uint16_t *ff); |
| 115 | + int (* gs_ext_fc_set_pid_f)(void *ctx,uint8_t type,uint16_t ff); |
| 116 | + int (* gs_ext_fc_get_pid_profile_index)(void *ctx,uint8_t *pid_index); |
| 117 | + int (* gs_ext_fc_set_pid)(void *ctx,uint8_t type,uint8_t value); |
| 118 | + int (* gs_ext_fc_get_battery_state)(void *ctx,void *state);//(void *ctx,batteryState_e *state); |
| 119 | + int (* gs_ext_fc_get_battery_voltage)(void *ctx,uint16_t *batt_voltage); |
| 120 | + int (* gs_ext_fc_get_battery_avg_voltage)(void *ctx,uint16_t *avg_batt_voltage); |
| 121 | + int (* gs_ext_fc_get_battery_amperage)(void *ctx,uint16_t *batt_amperage); |
| 122 | + int (* gs_ext_fc_get_battery_mah)(void *ctx,uint16_t *mah); |
| 123 | + int (* gs_ext_fc_get_battery_usage)(void *ctx,uint16_t *percent); |
| 124 | + int (* gs_ext_fc_get_battery_power)(void *ctx,uint16_t *power); |
| 125 | + int (* gs_ext_fc_set_arming_disabled)(void *ctx,uint8_t arming_disabled); |
| 126 | + int (* gs_ext_fc_get_arming_disabled)(void *ctx,uint32_t *arming_disabled); |
| 127 | + int (* gs_ext_fc_get_version)(void *ctx,uint8_t *major,uint8_t *minor,uint8_t *patch_level); |
| 128 | + int (* gs_ext_fc_set_sbus_mode)(void *ctx,uint8_t sbus_mode); |
| 129 | + int (* gs_ext_fc_get_racing_osd_info)(void *ctx,void *osdInfo);//(void *ctx,DUSS_MSG_FC_RACING_DRONE_OSD_PUSH_t *osdInfo); |
| 130 | + int (* gs_ext_fc_get_osd_position)(void *ctx,int num,bool *activated,int *x,int *y); |
| 131 | + int (* gs_ext_fc_get_units)(void *ctx,uint8_t *units); |
| 132 | + int (* gs_ext_fc_get_fly_mode)(void *ctx,uint16_t *fly_mode); |
| 133 | + int (* gs_ext_fc_get_rtc_date)(void *ctx,void *rtc);//(void *ctx,DUSS_MSG_EXT_FC_RTC_t *rtc); |
| 134 | + int (* gs_ext_fc_get_esc_temperature)(void *ctx,uint8_t *temp); |
| 135 | + void (* dummy_1)(void); |
| 136 | + void (* dummy_2)(void); |
| 137 | + int (* gs_media_adjust_fov)(void *ctx,uint32_t scaling,int16_t x,int16_t y); |
| 138 | + int (* gs_bl_set_brightness_value)(void *ctx,uint8_t value); |
| 139 | + int (* gs_bl_get_brightness_value)(void *ctx,uint8_t *value); |
| 140 | + void (* get_device_volume)(void); |
| 141 | + void (* set_device_volume)(void); |
| 142 | + void (* gs_imu_acc_gyro_calibrate)(char *configfile); |
| 143 | + void (* gs_imu_initialize)(void); |
| 144 | + void (* gs_imu_destroy)(void); |
| 145 | + void (* gs_imu_start)(void); |
| 146 | + void (* gs_imu_stop)(void); |
| 147 | + void (* gs_imu_get_init_status)(void); |
| 148 | + void (* gs_imu_get_attitude)(void); |
| 149 | + int (* gs_sd_format_wrap)(void *ctx); |
| 150 | + int (* gs_sd_get_info_wrap)(void *ctx,void *sd_info);//(void *ctx,gs_local_sd_info_t *sd_info) |
| 151 | + int (* gs_get_battery_info)(void *ctx,void *bat_info);//(void *ctx,DUSS_MSG_RC_BAT_INFO_t *bat_info); |
| 152 | + int (* gs_get_device_active_state)(void *ctx,int device_type); |
| 153 | + int (* gs_av_in_us_get_brightness)(void *ctx,uint8_t *value); |
| 154 | + int (* gs_av_in_us_set_brightness)(void *ctx,uint8_t value); |
| 155 | + void (* dummy_3)(void); |
| 156 | + int (* gs_av_in_us_get_satutation)(void *ctx,uint8_t *value); |
| 157 | + int (* gs_av_in_us_set_saturaton)(void *ctx,uint8_t value); |
| 158 | + int (* gs_reset_user_settings)(void *ctx); |
| 159 | + int (* gs_ui_event_tracking)(void *ctx,int32_t value,uint8_t event_type,uint8_t event_sub_id); |
| 160 | + void (* gs_get_real_flight_stat)(uint8_t *stat); |
| 161 | + void (* gs_set_flight_stat)(uint8_t stat); |
| 162 | + int (* gs_watermarker_us_get_flag)(void *ctx,uint8_t *value); |
| 163 | + int (* gs_watermarker_us_set_flag)(void *ctx,uint8_t value); |
| 164 | + int (* gs_watermarker_us_reset)(void *ctx); |
| 165 | + int (* gs_player_open)(void *ctx,char *filename); |
| 166 | + int (* gs_player_close)(void *ctx); |
| 167 | + int (* gs_player_stop)(void *ctx); |
| 168 | + int (* gs_player_pause)(void *ctx); |
| 169 | + int (* gs_player_resume)(void *ctx); |
| 170 | + int (* gs_player_seek_time)(void *ctx,uint32_t time); |
| 171 | + int (* gs_player_seek)(void *ctx,uint32_t pos); |
| 172 | + int (* gs_player_get_duration)(char *filename,uint32_t *duration); |
| 173 | + int (* gs_player_get_cur_time)(void *ctx,uint32_t *cur_time,uint32_t *duration); |
| 174 | + int (* gs_player_get_state)(void *ctx,uint32_t *state); |
| 175 | + int (* gs_player_get_fileinfo)(char *filename,void *file_info);//(char *filename,vdec_video_file_info_t *file_info); |
| 176 | + int (* gs_player_is_playing)(void *ctx,bool *is_playing); |
| 177 | + int (* gs_player_delete_file)(char *filename); |
| 178 | + int (* gs_send_camera_cmd_async)(void *event_obj,int cam_cmd,void *msg,uint32_t msg_len,uint16_t seq_id);//(duss_event_client *event_obj,int cam_cmd,void *msg,uint32_t msg_len,uint16_t seq_ id) |
| 179 | + int (* gs_set_camera_param)(void *ctx,uint8_t param_type,uint8_t param); |
| 180 | + int (* gs_uav_camera_get_rec_time)(void *ctx,int *mode,int *rec_time); |
| 181 | + int (* gs_modem_pairing_control_wrap)(void *ctx,uint32_t ctrl); |
| 182 | + void (* dummy_4)(void); |
| 183 | + void (* dummy_5)(void); |
| 184 | + void (* dummy_6)(void); |
| 185 | + void (* dummy_7)(void); |
| 186 | + void (* dummy_8)(void); |
| 187 | + void (* dummy_9)(void); |
| 188 | + void (* dummy_10)(void); |
| 189 | + void (* dummy_11)(void); |
| 190 | + void (* dummy_12)(void); |
| 191 | + void (* dummy_13)(void); |
| 192 | + void (* dummy_14)(void); |
| 193 | + void (* dummy_15)(void); |
| 194 | + void (* dummy_16)(void); |
| 195 | + int (* gs_modem_get_link_state_wrap)(void *ctx,gs_link_stat_t *link_stat); |
| 196 | + int (* gs_modem_get_bandwidth)(void *ctx,uint16_t *bandwidth); |
| 197 | + int (* gs_modem_set_bandwidth)(void *ctx,uint16_t bandwidth); |
| 198 | + int (* gs_modem_get_chnl)(void *ctx,uint16_t *chnl_id); |
| 199 | + int (* gs_modem_set_chnl_scan_info)(void *ctx,uint8_t chnl_num,uint8_t bandwidth); |
| 200 | + int (* gs_modem_rob_chnl_cancel)(void *ctx); |
| 201 | + int (* gs_modem_rob_chnl)(void *ctx,uint16_t chnl_id); |
| 202 | + int (* gs_modem_get_rob_left_time)(void *ctx,uint8_t *left_time); |
| 203 | + int (* gs_modem_get_rob_flag)(void *ctx,uint8_t *flag); |
| 204 | + int (* gs_modem_clear_rob_flag)(void *ctx); |
| 205 | + int (* gs_modem_set_public_chnl)(void *ctx); |
| 206 | + int (* gs_modem_is_drone_broadcast)(void *ctx,uint16_t *is_brdcst); |
| 207 | + int (* gs_modem_enable_drone_broadcast)(void *ctx,uint16_t enable); |
| 208 | + int (* gs_modem_listen_broadcast)(void *ctx,uint16_t chnl_id); |
| 209 | + int (* gs_modem_is_silent)(void *ctx,uint16_t *is_silent); |
| 210 | + int (* gs_modem_set_chnl)(void *ctx,uint16_t chnl_id); |
| 211 | + int (* gs_modem_scan_chnl_x)(void *ctx,uint8_t chnl_id,uint8_t bandwidth); |
| 212 | + int (* gs_modem_check_ant_status)(void *ctx); |
| 213 | + int (* gs_modem_if_new_chnl_scan_info)(void *ctx,uint8_t *flag); |
| 214 | + int (* gs_modem_if_new_phy_check_info)(void *ctx,uint8_t *flag); |
| 215 | + int (* gs_modem_if_update_bandwidth_pending)(void *ctx,uint8_t *pending); |
| 216 | + int (* gs_modem_clear_scan_flag)(void *ctx); |
| 217 | + int (* gs_modem_clear_check_flag)(void *ctx); |
| 218 | + int (* gs_modem_get_chnl_scan_info)(void *ctx,uint8_t chnl_id,uint8_t *occupied,uint8_t *work_ind,uint32_t *ipsd ); |
| 219 | + int (* gs_modem_get_ant_status)(void *ctx,uint8_t *tx_ant,uint8_t *rx_ant); |
| 220 | + int (* gs_modem_get_dbg_mcs)(void *ctx,uint16_t *mcs); |
| 221 | + int (* gs_modem_set_dbg_mcs)(void *ctx,uint16_t mcs); |
| 222 | + int (* gs_modem_get_dbg_harq)(void *ctx,uint16_t *harq); |
| 223 | + int (* gs_modem_set_dbg_harq)(void *ctx,uint16_t harq); |
| 224 | + int (* gs_modem_get_dbg_codec_rate)(void *ctx,uint16_t *codec_rate); |
| 225 | + int (* gs_modem_set_dbg_codec_rate)(void *ctx,uint16_t codec_rate); |
| 226 | + int (* gs_modem_get_signal_quality)(void *ctx,void *signal_quality);//(void *ctx,glass_signal_quality_t *signal_quality); |
| 227 | + int (* gs_modem_get_rc_signal_quality)(void *ctx,void *rc_signal_quality);//(void *ctx,glass_signal_quality_t *rc_signal_quality) |
| 228 | + int (* gs_modem_set_bandwidth_mode)(void *ctx,uint16_t bandwidth_id); |
| 229 | + int (* gs_modem_change_silent_mode)(void *ctx,uint8_t mode); |
| 230 | + int (* gs_modem_get_chnl_cnt_wrap)(void *ctx,uint16_t *chnl_cnt); |
| 231 | + int (* gs_modem_get_freq_by_index_wrap)(void *ctx,uint16_t *freqByIndex,uint16_t chnlId); |
| 232 | + int (* gs_modem_get_scan_type_wrap)(void *ctx,uint8_t *scanType); |
| 233 | + int (* gs_modem_get_wireless_area_id)(void *ctx,uint8_t *area_id); |
| 234 | + int (* gs_modem_get_pairing_finish_flag)(void *ctx,uint8_t *pairing_finish); |
| 235 | + int (* gs_modem_check_conf_items)(void *ctx); |
| 236 | + int (* gs_rc_get_version)(void *ctx,char *ap_ver,char *board_sn,int8_t *valid); |
| 237 | + int (* gs_rc_get_version_async)(void *ctx); |
| 238 | + int (* gs_rc_set_subtrim)(void *ctx,uint8_t stick,int16_t st); |
| 239 | + int (* gs_rc_set_subtrim_async)(void *ctx,uint8_t stick,int16_t st); |
| 240 | + int (* gs_rc_get_subtrim_sync)(void *ctx,void *subtrim);//(void *ctx,rc_set_all_st_t *subtrim) |
| 241 | + int (* gs_rc_get_subtrim_async)(void *ctx); |
| 242 | + int (* gs_rc_set_reverse)(void *ctx,uint8_t stick,uint8_t rev); |
| 243 | + int (* gs_rc_get_reverse_sync)(void *ctx,void *reverse);//(void *ctx,rc_set_reverse_t *reverse) |
| 244 | + int (* gs_rc_get_reverse_async)(void *ctx); |
| 245 | + int (* gs_rc_set_endpoint)(void *ctx,uint8_t stick_ch,uint8_t ep_min,uint8_t ep_max); |
| 246 | + int (* gs_rc_set_endpoint_async)(void *ctx,uint8_t stick_ch,uint8_t ep_min,uint8_t ep_max); |
| 247 | + int (* gs_rc_get_endpoint_sync)(void *ctx,void *ep);//(void *ctx,rc_set_all_ep_t *ep) |
| 248 | + int (* gs_rc_get_endpoint_async)(void *ctx); |
| 249 | + int (* gs_rc_set_function_mode)(void *ctx,uint8_t func,uint8_t stick,uint8_t set_val); |
| 250 | + int (* gs_rc_get_function_mode)(void *ctx,void *func_mode);//(void *ctx,rc_set_function_pack_t *func_mode) |
| 251 | + int (* gs_rc_set_stick_mode)(void *ctx,uint8_t stick_mode); |
| 252 | + int (* gs_rc_get_stick_mode_async)(void *ctx); |
| 253 | + int (* gs_rc_get_stick_mode_ext)(void *ctx,uint8_t *mode); |
| 254 | + int (* gs_rc_get_stick_mode_sync)(void *ctx,uint8_t *mode); |
| 255 | + int (* gs_rc_set_stick_cali_stage)(void *ctx,uint8_t tid,uint8_t stage,uint8_t *rc_stage); |
| 256 | + int (* gs_rc_get_stick_cali_value)(void *ctx,uint8_t tid,int8_t *x1_pct,int8_t *y1_pct,int8_t *x2_pct,int8_t *y2_pct); |
| 257 | + int (* gs_rc_set_warning_mode)(void *ctx,int warn);//(void *ctx,rc_set_warning_mode_pack_t warn) |
| 258 | + int (* gs_rc_get_warning_mode)(void *ctx,void *warn);//(void *ctx,rc_set_warning_mode_pack_t *warn) |
| 259 | + int (* gs_rc_monitor_setup)(void *ctx,void *monitor);//(void *ctx,rc_monitor_pack_t *monitor) |
| 260 | + int (* gs_rc_reset_all_get_status)(void *ctx); |
| 261 | + int (* gs_rc_reset_default_async)(void *ctx,uint8_t resetType); |
| 262 | + uint8_t (* gs_rc_get_lock_state)(void *ctx); |
| 263 | + uint8_t (* gs_rc_get_link_state)(void *ctx); |
| 264 | + int (* gs_vcm_register_channel_switch_callback_wrap)(void *ctx,int callback,void *data);//(void *ctx,gs_video_channel_switch_callback_t callback,void *data) |
| 265 | + int (* gs_vcm_register_channel_push_callback_wrap)(void *ctx,int callback,void *data);//(void *ctx,gs_video_channel_push_callback_t callback,void *data) |
| 266 | + int (* gs_vcm_query_current_channel_wrap)(void *ctx,void *chnl_id);//(void *ctx,gs_video_channel_id_t *chnl_id) |
| 267 | + int (* gs_vcm_enable_channel_wrap)(void *ctx,int chnl_id);//(void *ctx,gs_main_channel_id_t chnl_id) |
| 268 | + int (* gs_vcm_disable_channel_wrap)(void *ctx,int chnl_id);//(void *ctx,gs_main_channel_id_t chnl_id) |
| 269 | + int (* gs_vcm_enable_sub_channel_wrap)(void *ctx,void *sub_chnl_id);//(void *ctx,gs_video_channel_id_t *sub_chnl_id) |
| 270 | + int (* gs_vcm_disable_sub_channel_wrap)(void *ctx,void *sub_chnl_id);//(void *ctx,gs_video_channel_id_t *sub_chnl_id) |
| 271 | + int (* gs_vcm_local_playback_on_wrap)(void *ctx,char *video_path); |
| 272 | + int (* gs_vcm_local_playback_off_wrap)(void *ctx); |
| 273 | + int (* gs_vcm_rc_setting_on_wrap)(void *ctx); |
| 274 | + int (* gs_vcm_rc_setting_off_wrap)(void *ctx); |
| 275 | + int (* gs_common_send_cmd)(void *ctx,void *cmd,bool sync);//(void *ctx,gs_common_cmd_t *cmd,bool sync) |
| 276 | + int (* gs_get_codec_debug_osd_info)(void *ctx,void *info);//(void *ctx,debug_codec_osd_info_t *info) |
| 277 | + int (* gs_get_cam_debug_osd_info)(void *ctx,void *info);//(void *ctx,debug_cam_osd_info_t *info) |
| 278 | + int (* gs_get_temp_debug_osd_info)(void *ctx,void *info);//(void *ctx,debug_temp_osd_info_t *info) |
| 279 | + int (* gs_get_uav_max_temp)(void *ctx,int32_t *uav_temp); |
| 280 | + int (* gs_get_cp_debug_osd_info)(void *ctx,void *info);//(void *ctx,debug_cp_osd_info_t *info) |
| 281 | + int (* gs_set_racing_enc_strategy)(void *ctx,uint8_t strategy); |
| 282 | + int (* gs_debug_is_camera_in_record)(void *ctx,int *record_state); |
| 283 | + int (* gs_get_cparm_version)(void *ctx,char *arm_ver); |
| 284 | + int (* gs_get_dsp_version)(void *ctx,char *dsp_ver); |
| 285 | + int (* gs_get_flight_time)(void *ctx,uint64_t *flight_time); |
| 286 | + int (* gs_get_arm_status)(void *ctx,uint8_t *flag); |
| 287 | + int (* gs_clear_adb_log_info)(void *ctx); |
| 288 | + int (* gs_reset_camera_param)(void *ctx); |
| 289 | + int (* gs_set_low_power_mode)(void *ctx,bool mode); |
| 290 | + int (* gs_get_uav_version)(void *ctx,char *ap_ver,char *board_sn); |
| 291 | + int (* gs_get_uav_hardware_version)(void *ctx,char *hw_ver); |
| 292 | + int (* gs_get_uav_power_status)(void *ctx,uint8_t *power_status,uint8_t *arm_flag); |
| 293 | + int (* gs_get_uav_camera_type)(void *ctx,uint8_t *cam_type); |
| 294 | + int (* gs_get_liveview_fps)(void *ctx,uint8_t *lv_fps); |
| 295 | + int (* gs_fbdev_open)(void); |
| 296 | + int (* gs_fbdev_disp_frame)(int *frm_id); |
| 297 | + int (* gs_fbdev_close)(void); |
| 298 | + int (* gs_record_liveview)(void *ctx,bool b_record); |
| 299 | + int (* gs_liveview_get_state)(void *ctx,int *lv_rec_state); |
| 300 | + int (* gs_lv_transcode_get_looping_mode)(void *ctx); |
| 301 | + int (* gs_lv_transcode_set_looping_mode)(void *ctx,int rec_mode);//(void *ctx,record_mode_t rec_mode) |
| 302 | + int (* gs_lv_transcode_get_state)(void *ctx); |
| 303 | + int (* gs_lv_transcode_record)(void *ctx,bool b_record,Record_sender sender); |
| 304 | + int (* gs_lv_transcode_get_rec_time)(void *ctx,int *rec_time); |
| 305 | + int (* gs_enable_audio_liveview)(void *ctx,bool b_enable); |
| 306 | + int (* gs_get_frame_delay_e2e)(void *ctx,uint16_t *delay); |
| 307 | + int (* gs_get_chnl_status)(void *ctx,uint16_t *chnl_status); |
| 308 | + int (* gs_get_pigeon_battery_info)(void *ctx,void *vol);//(void *ctx,gs_battery_voltage_t *vol) |
| 309 | + int (* gs_get_sd_status)(void *ctx,int type,uint8_t *sd_status,uint32_t *total_kbytes,uint32_t *free_kbytes); |
| 310 | + int (* gs_pwm_buzzer_playback)(void *ctx,int freq,int duty,int delay_ms); |
| 311 | + int (* gs_pwm_buzzer_enable_bat)(void *ctx,bool enable); |
| 312 | +}; |
0 commit comments