view plugins/crazychat/crazychat.h @ 13253:87a7c3077c19

[gaim-migrate @ 15619] More cleaning up of oscar. Renamed some functions to be more clear. Got rid of some stuff that wasn't used. Inlined some small things in conn.c that were only used once. The goals of all this are 1. Non-blocking I/O for all connections 2. p2p stuff won't use the same struct as oscar connections, because that's stupid 3. The oscar PRPL should be less scary committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sun, 12 Feb 2006 21:27:04 +0000
parents 8bcd4d4ccef6
children
line wrap: on
line source

#ifndef __CRAZYCHAT_H__
#define __CRAZYCHAT_H__

#include <glib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <gtk/gtk.h>
#include "filter.h"
#include "gaim.h"

#ifdef HAVE_CONFIG_H
# include "config.h"
#endif

struct crazychat;

/* --- type definitions --- */

typedef enum { INVITE = 0, ACCEPT, ACCEPTED, CONNECTED } CC_STATE;

/**
 * Finds the CrazyChat session with the handle.
 * @param cc		global crazychat data structure
 * @param handle	the peer name
 * @return		the cc_session if found, or NULL
 */
struct cc_session *cc_find_session(struct crazychat *cc, char *handle);

/**
 * Adds a new session with a peer, unless a peer session already exists.
 * Makes a deep copy of the handle.
 * @param cc		global crazychat data structure
 * @param handle	the peer name
 * @return		the new/old cc_session
 */
struct cc_session *cc_add_session(struct crazychat *cc, char *handle);

/**
 * Removes a crazychat session with a peer.
 * @param cc		global crazychat data structure
 * @param session	the cc_session to remove
 */
void cc_remove_session(struct crazychat *cc, struct cc_session *session);

#endif				/* __CRAZYCHAT_H__ */