forked from Green-Sky/tomato
Squashed 'external/toxcore/c-toxcore/' changes from e29e185c03..f1df709b87
f1df709b87 feat: add ngc events 1b6c907235 refactor: Make event dispatch ordered by receive time. b7f9367f6f test: Upgrade cppcheck, fix some warnings. 766e62bc89 chore: Use `pkg_search_module` directly in cmake. 00ff078f91 cleanup: Use target_link_libraries directly in cmake. c58928cc89 chore: Add `IMPORTED_TARGET` to pkg-config packages. 895a6af122 cleanup: Remove NaCl support. 41dfb1c1c0 fix: unpack enum function names in event impl generator 447666d1a1 chore: Disable targets for cross-compilation. 572924e924 chore: Build a docker image with coverage info in it. 415cb78f5e cleanup: Some portability/warning fixes for Windows builds. 425216d9ec fix: Correct a use-after-free and fix some memory leaks. 4b1cfa3e08 refactor: Change all enum-like `#define` sequences into enums. d3c2704fa9 chore: Fix make_single_file to support core-only. 0ce46b644e refactor: Change the `TCP_PACKET_*` defines into an enum. 22cd38ad50 adopt event impl generation tool to #2392 f31ea1088a add the event impl generation tool 4e603bb613 refactor: Use `enum-from-int` rule from tokstyle. 19d8f180d6 chore: Update github actions `uses`. 6a895be0c7 test: Make esp32 build actually try to instantiate tox. 65d09c9bfb cleanup: Remove test net support. REVERT: e29e185c03 feat: add ngc events git-subtree-dir: external/toxcore/c-toxcore git-subtree-split: f1df709b8792da4c0e946d826b11df77d565064d
This commit is contained in:
@ -88,7 +88,7 @@ uint32_t tox_event_file_recv_get_kind(
|
||||
typedef struct Tox_Event_File_Recv_Chunk Tox_Event_File_Recv_Chunk;
|
||||
const uint8_t *tox_event_file_recv_chunk_get_data(
|
||||
const Tox_Event_File_Recv_Chunk *file_recv_chunk);
|
||||
uint32_t tox_event_file_recv_chunk_get_length(
|
||||
uint32_t tox_event_file_recv_chunk_get_data_length(
|
||||
const Tox_Event_File_Recv_Chunk *file_recv_chunk);
|
||||
uint32_t tox_event_file_recv_chunk_get_file_number(
|
||||
const Tox_Event_File_Recv_Chunk *file_recv_chunk);
|
||||
@ -190,7 +190,7 @@ uint32_t tox_event_group_peer_name_get_peer_id(
|
||||
const Tox_Event_Group_Peer_Name *group_peer_name);
|
||||
const uint8_t *tox_event_group_peer_name_get_name(
|
||||
const Tox_Event_Group_Peer_Name *group_peer_name);
|
||||
size_t tox_event_group_peer_name_get_name_length(
|
||||
uint32_t tox_event_group_peer_name_get_name_length(
|
||||
const Tox_Event_Group_Peer_Name *group_peer_name);
|
||||
|
||||
typedef struct Tox_Event_Group_Peer_Status Tox_Event_Group_Peer_Status;
|
||||
@ -208,7 +208,7 @@ uint32_t tox_event_group_topic_get_peer_id(
|
||||
const Tox_Event_Group_Topic *group_topic);
|
||||
const uint8_t *tox_event_group_topic_get_topic(
|
||||
const Tox_Event_Group_Topic *group_topic);
|
||||
size_t tox_event_group_topic_get_topic_length(
|
||||
uint32_t tox_event_group_topic_get_topic_length(
|
||||
const Tox_Event_Group_Topic *group_topic);
|
||||
|
||||
typedef struct Tox_Event_Group_Privacy_State Tox_Event_Group_Privacy_State;
|
||||
@ -240,7 +240,7 @@ uint32_t tox_event_group_password_get_group_number(
|
||||
const Tox_Event_Group_Password *group_password);
|
||||
const uint8_t *tox_event_group_password_get_password(
|
||||
const Tox_Event_Group_Password *group_password);
|
||||
size_t tox_event_group_password_get_password_length(
|
||||
uint32_t tox_event_group_password_get_password_length(
|
||||
const Tox_Event_Group_Password *group_password);
|
||||
|
||||
typedef struct Tox_Event_Group_Message Tox_Event_Group_Message;
|
||||
@ -252,7 +252,7 @@ Tox_Message_Type tox_event_group_message_get_type(
|
||||
const Tox_Event_Group_Message *group_message);
|
||||
const uint8_t *tox_event_group_message_get_message(
|
||||
const Tox_Event_Group_Message *group_message);
|
||||
size_t tox_event_group_message_get_message_length(
|
||||
uint32_t tox_event_group_message_get_message_length(
|
||||
const Tox_Event_Group_Message *group_message);
|
||||
uint32_t tox_event_group_message_get_message_id(
|
||||
const Tox_Event_Group_Message *group_message);
|
||||
@ -266,7 +266,7 @@ Tox_Message_Type tox_event_group_private_message_get_type(
|
||||
const Tox_Event_Group_Private_Message *group_private_message);
|
||||
const uint8_t *tox_event_group_private_message_get_message(
|
||||
const Tox_Event_Group_Private_Message *group_private_message);
|
||||
size_t tox_event_group_private_message_get_message_length(
|
||||
uint32_t tox_event_group_private_message_get_message_length(
|
||||
const Tox_Event_Group_Private_Message *group_private_message);
|
||||
|
||||
typedef struct Tox_Event_Group_Custom_Packet Tox_Event_Group_Custom_Packet;
|
||||
@ -276,7 +276,7 @@ uint32_t tox_event_group_custom_packet_get_peer_id(
|
||||
const Tox_Event_Group_Custom_Packet *group_custom_packet);
|
||||
const uint8_t *tox_event_group_custom_packet_get_data(
|
||||
const Tox_Event_Group_Custom_Packet *group_custom_packet);
|
||||
size_t tox_event_group_custom_packet_get_data_length(
|
||||
uint32_t tox_event_group_custom_packet_get_data_length(
|
||||
const Tox_Event_Group_Custom_Packet *group_custom_packet);
|
||||
|
||||
typedef struct Tox_Event_Group_Custom_Private_Packet Tox_Event_Group_Custom_Private_Packet;
|
||||
@ -286,7 +286,7 @@ uint32_t tox_event_group_custom_private_packet_get_peer_id(
|
||||
const Tox_Event_Group_Custom_Private_Packet *group_custom_private_packet);
|
||||
const uint8_t *tox_event_group_custom_private_packet_get_data(
|
||||
const Tox_Event_Group_Custom_Private_Packet *group_custom_private_packet);
|
||||
size_t tox_event_group_custom_private_packet_get_data_length(
|
||||
uint32_t tox_event_group_custom_private_packet_get_data_length(
|
||||
const Tox_Event_Group_Custom_Private_Packet *group_custom_private_packet);
|
||||
|
||||
typedef struct Tox_Event_Group_Invite Tox_Event_Group_Invite;
|
||||
@ -294,11 +294,11 @@ uint32_t tox_event_group_invite_get_friend_number(
|
||||
const Tox_Event_Group_Invite *group_invite);
|
||||
const uint8_t *tox_event_group_invite_get_invite_data(
|
||||
const Tox_Event_Group_Invite *group_invite);
|
||||
size_t tox_event_group_invite_get_invite_data_length(
|
||||
uint32_t tox_event_group_invite_get_invite_data_length(
|
||||
const Tox_Event_Group_Invite *group_invite);
|
||||
const uint8_t *tox_event_group_invite_get_group_name(
|
||||
const Tox_Event_Group_Invite *group_invite);
|
||||
size_t tox_event_group_invite_get_group_name_length(
|
||||
uint32_t tox_event_group_invite_get_group_name_length(
|
||||
const Tox_Event_Group_Invite *group_invite);
|
||||
|
||||
typedef struct Tox_Event_Group_Peer_Join Tox_Event_Group_Peer_Join;
|
||||
@ -316,11 +316,11 @@ Tox_Group_Exit_Type tox_event_group_peer_exit_get_exit_type(
|
||||
const Tox_Event_Group_Peer_Exit *group_peer_exit);
|
||||
const uint8_t *tox_event_group_peer_exit_get_name(
|
||||
const Tox_Event_Group_Peer_Exit *group_peer_exit);
|
||||
size_t tox_event_group_peer_exit_get_name_length(
|
||||
uint32_t tox_event_group_peer_exit_get_name_length(
|
||||
const Tox_Event_Group_Peer_Exit *group_peer_exit);
|
||||
const uint8_t *tox_event_group_peer_exit_get_part_message(
|
||||
const Tox_Event_Group_Peer_Exit *group_peer_exit);
|
||||
size_t tox_event_group_peer_exit_get_part_message_length(
|
||||
uint32_t tox_event_group_peer_exit_get_part_message_length(
|
||||
const Tox_Event_Group_Peer_Exit *group_peer_exit);
|
||||
|
||||
typedef struct Tox_Event_Group_Self_Join Tox_Event_Group_Self_Join;
|
||||
@ -343,7 +343,7 @@ uint32_t tox_event_group_moderation_get_target_peer_id(
|
||||
Tox_Group_Mod_Event tox_event_group_moderation_get_mod_type(
|
||||
const Tox_Event_Group_Moderation *group_moderation);
|
||||
|
||||
typedef enum Tox_Event {
|
||||
typedef enum Tox_Event_Type {
|
||||
TOX_EVENT_SELF_CONNECTION_STATUS = 0,
|
||||
|
||||
TOX_EVENT_FRIEND_REQUEST = 1,
|
||||
@ -390,7 +390,102 @@ typedef enum Tox_Event {
|
||||
TOX_EVENT_GROUP_SELF_JOIN = 36,
|
||||
TOX_EVENT_GROUP_JOIN_FAIL = 37,
|
||||
TOX_EVENT_GROUP_MODERATION = 38,
|
||||
} Tox_Event;
|
||||
|
||||
TOX_EVENT_INVALID = 255,
|
||||
} Tox_Event_Type;
|
||||
|
||||
const char *tox_event_type_to_string(Tox_Event_Type type);
|
||||
|
||||
/**
|
||||
* A single Tox core event.
|
||||
*
|
||||
* It could contain any of the above event types. Use `tox_event_get_type` to
|
||||
* find out which one it is, then use one of the `get` functions to get the
|
||||
* actual event object out. The `get` functions will return NULL in case of type
|
||||
* mismatch.
|
||||
*/
|
||||
typedef struct Tox_Event Tox_Event;
|
||||
|
||||
Tox_Event_Type tox_event_get_type(const Tox_Event *event);
|
||||
|
||||
const Tox_Event_Conference_Connected *tox_event_get_conference_connected(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Conference_Invite *tox_event_get_conference_invite(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Conference_Message *tox_event_get_conference_message(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Conference_Peer_List_Changed *tox_event_get_conference_peer_list_changed(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Conference_Peer_Name *tox_event_get_conference_peer_name(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Conference_Title *tox_event_get_conference_title(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_File_Chunk_Request *tox_event_get_file_chunk_request(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_File_Recv_Chunk *tox_event_get_file_recv_chunk(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_File_Recv_Control *tox_event_get_file_recv_control(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_File_Recv *tox_event_get_file_recv(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Connection_Status *tox_event_get_friend_connection_status(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Lossless_Packet *tox_event_get_friend_lossless_packet(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Lossy_Packet *tox_event_get_friend_lossy_packet(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Message *tox_event_get_friend_message(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Name *tox_event_get_friend_name(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Read_Receipt *tox_event_get_friend_read_receipt(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Request *tox_event_get_friend_request(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Status_Message *tox_event_get_friend_status_message(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Status *tox_event_get_friend_status(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Friend_Typing *tox_event_get_friend_typing(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Self_Connection_Status *tox_event_get_self_connection_status(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Peer_Name *tox_event_get_group_peer_name(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Peer_Status *tox_event_get_group_peer_status(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Topic *tox_event_get_group_topic(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Privacy_State *tox_event_get_group_privacy_state(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Voice_State *tox_event_get_group_voice_state(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Topic_Lock *tox_event_get_group_topic_lock(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Peer_Limit *tox_event_get_group_peer_limit(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Password *tox_event_get_group_password(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Message *tox_event_get_group_message(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Private_Message *tox_event_get_group_private_message(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Custom_Packet *tox_event_get_group_custom_packet(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Custom_Private_Packet *tox_event_get_group_custom_private_packet(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Invite *tox_event_get_group_invite(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Peer_Join *tox_event_get_group_peer_join(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Peer_Exit *tox_event_get_group_peer_exit(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Self_Join *tox_event_get_group_self_join(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Join_Fail *tox_event_get_group_join_fail(
|
||||
const Tox_Event *event);
|
||||
const Tox_Event_Group_Moderation *tox_event_get_group_moderation(
|
||||
const Tox_Event *event);
|
||||
|
||||
/**
|
||||
* Container object for all Tox core events.
|
||||
@ -399,6 +494,9 @@ typedef enum Tox_Event {
|
||||
*/
|
||||
typedef struct Tox_Events Tox_Events;
|
||||
|
||||
uint32_t tox_events_get_size(const Tox_Events *events);
|
||||
const Tox_Event *tox_events_get(const Tox_Events *events, uint32_t index);
|
||||
|
||||
uint32_t tox_events_get_conference_connected_size(const Tox_Events *events);
|
||||
uint32_t tox_events_get_conference_invite_size(const Tox_Events *events);
|
||||
uint32_t tox_events_get_conference_message_size(const Tox_Events *events);
|
||||
@ -573,7 +671,7 @@ Tox_Events *tox_events_iterate(Tox *tox, bool fail_hard, Tox_Err_Events_Iterate
|
||||
void tox_events_free(Tox_Events *events);
|
||||
|
||||
uint32_t tox_events_bytes_size(const Tox_Events *events);
|
||||
void tox_events_get_bytes(const Tox_Events *events, uint8_t *bytes);
|
||||
bool tox_events_get_bytes(const Tox_Events *events, uint8_t *bytes);
|
||||
|
||||
Tox_Events *tox_events_load(const Tox_System *sys, const uint8_t *bytes, uint32_t bytes_size);
|
||||
|
||||
|
Reference in New Issue
Block a user