blender/extern/verse/dist/vs_server.h

55 lines
1.9 KiB
C

/*
**
*/
#include <stdlib.h>
extern void vs_init_connection_storage(void);
extern void vs_add_new_connection(VSession session, const char *name, const char *pass, VNodeID node_id);
extern void vs_remove_connection(void);
extern void vs_set_next_session(void);
typedef void VSSubscriptionList;
extern VSSubscriptionList * vs_create_subscription_list(void);
extern void vs_destroy_subscription_list(VSSubscriptionList *list);
extern int vs_add_new_subscriptor(VSSubscriptionList *list);
extern void vs_remove_subscriptor(VSSubscriptionList *list);
extern size_t vs_get_subscript_count(const VSSubscriptionList *list);
extern void vs_set_subscript_session(VSSubscriptionList *list, unsigned int session);
extern void vs_reset_subscript_session(void);
extern uint32 vs_get_avatar(void);
extern VSession vs_get_session(void);
extern const char * vs_get_user_name(void);
extern const char * vs_get_user_pass(void);
typedef struct {
VNodeID id;
VNodeType type;
VNodeID owner;
char *name;
void *tag_groups;
uint16 group_count;
VSSubscriptionList *subscribers;
} VSNodeHead;
extern void vs_init_node_storage(void);
extern uint32 vs_add_new_node(VSNodeHead *node, VNodeType type);
extern VSNodeHead * vs_get_node(unsigned int node_id, VNodeType type);
extern VSNodeHead * vs_get_node_head(unsigned int node_id);
extern void create_node_head(VSNodeHead *node, const char *name, unsigned int owner);
extern void destroy_node_head(VSNodeHead *node);
extern void vs_send_node_head(VSNodeHead *node);
extern void vs_h_callback_init(void); /* "Head", not an actual node type. */
extern void vs_o_callback_init(void);
extern void vs_g_callback_init(void);
extern void vs_m_callback_init(void);
extern void vs_b_callback_init(void);
extern void vs_t_callback_init(void);
extern void vs_c_callback_init(void);
extern void vs_a_callback_init(void);
extern void init_callback_node_storage(void);