view mcabber/src/events.h @ 803:8f8d8f8157a2

Take care of the strcasestr lacking (Cygwin)
author Soren Andersen <somian@pobox.com>
date Mon, 10 Apr 2006 23:30:39 +0200
parents ae23c8826efb
children 80bd7f49075f
line wrap: on
line source

#ifndef __EVENTS_H__
#define __EVENTS_H__ 1

#include "jabglue.h"


#define EVS_DEFAULT_TIMEOUT 90
#define EVS_MAX_TIMEOUT     432000

#define EVS_CONTEXT_TIMEOUT 0
#define EVS_CONTEXT_CANCEL  1
#define EVS_CONTEXT_USER    2

typedef enum {
  EVS_TYPE_SUBSCRIPTION = 1
} evs_type;

/* Common structure for events (evs) and IQ requests (iqs) */
typedef struct {
  char *id;
  time_t ts_create;
  time_t ts_expire;
  guint8 type;
  gpointer data;
  void (*callback)();
  xmlnode xmldata;
  char *desc;
} eviqs;

eviqs  *evs_new(guint8 type, time_t timeout);
int     evs_del(const char *evid);
int     evs_callback(const char *evid, guint evcontext);
void    evs_check_timeout(time_t now_t);
void    evs_display_list(void);
GSList *evs_geteventscomplist(void);

#endif /* __EVENTS_H__ */

/* vim: set expandtab cindent cinoptions=>2\:2(0:  For Vim users... */