62 lines
2.0 KiB
C
62 lines
2.0 KiB
C
#ifndef UI_INTERFACE_H_
|
|
#define UI_INTERFACE_H_
|
|
|
|
typedef enum dialog_type_e {
|
|
DIALOG_INFO,
|
|
DIALOG_WARNING,
|
|
DIALOG_QUESTION,
|
|
DIALOG_ERROR,
|
|
DIALOG_OTHER,
|
|
DIALOG_MAX
|
|
} dialog_type_t;
|
|
|
|
/**
|
|
* socket_connect_t
|
|
* @param remote_ip Remote ipv4 address
|
|
* @param port Remote port number
|
|
* @return RC_OK on Success, < 0 on failure
|
|
**/
|
|
typedef int (*socket_connect_t)(const char *remote_ip, const uint16_t port);
|
|
typedef int (*socket_disconnect_t)(void);
|
|
|
|
typedef int (*parse_signal_file_t)(const char *filename);
|
|
typedef int (*dissect_signal_t)(const uint32_t message_number);
|
|
|
|
/**
|
|
* ui_notification_dialog_t
|
|
* @param type Type for the new dialog box
|
|
* @param fmt String formater
|
|
* @param ... argument list
|
|
* @return RC_OK on Success, < 0 on failure
|
|
**/
|
|
typedef int (*ui_notification_dialog_t)(dialog_type_t type, const char *fmt, ...);
|
|
typedef int (*ui_disable_connect_button_t)(void);
|
|
typedef int (*ui_enable_connect_button_t)(void);
|
|
typedef int (*ui_progress_bar_set_fraction_t)(double fraction);
|
|
typedef int (*ui_progress_bar_terminate_t)(void);
|
|
|
|
typedef int (*ui_tree_view_new_signal_ind_t)(const uint32_t message_number, const char *signal_name);
|
|
typedef int (*ui_signal_set_text_t)(char *text, int length);
|
|
|
|
typedef struct {
|
|
/** UI -> core program */
|
|
socket_connect_t socket_connect;
|
|
socket_disconnect_t socket_disconnect;
|
|
parse_signal_file_t parse_signal_file;
|
|
dissect_signal_t dissect_signal;
|
|
|
|
/** core program -> UI */
|
|
int dissector_ready;
|
|
ui_notification_dialog_t ui_notification_dialog;
|
|
ui_disable_connect_button_t ui_disable_connect_button;
|
|
ui_enable_connect_button_t ui_enable_connect_button;
|
|
ui_progress_bar_set_fraction_t ui_progress_bar_set_fraction;
|
|
ui_progress_bar_terminate_t ui_progress_bar_terminate;
|
|
ui_tree_view_new_signal_ind_t ui_tree_view_new_signal_ind;
|
|
ui_signal_set_text_t ui_signal_set_text;
|
|
} ui_interface_t;
|
|
|
|
extern ui_interface_t ui_interface;
|
|
|
|
#endif /* UI_INTERFACE_H_ */
|