libpurple/protocols/msnp9/table.h

changeset 21481
d52b697eaae7
equal deleted inserted replaced
21480:3fdf3e905e24 21481:d52b697eaae7
1 /**
2 * @file table.h MSN helper structure
3 *
4 * purple
5 *
6 * Purple is the legal property of its developers, whose names are too numerous
7 * to list here. Please refer to the COPYRIGHT file distributed with this
8 * source distribution.
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
23 */
24 #ifndef _MSN_TABLE_H_
25 #define _MSN_TABLE_H_
26
27 typedef struct _MsnTable MsnTable;
28
29 #include "cmdproc.h"
30 #include "transaction.h"
31 #include "msg.h"
32
33 typedef void (*MsnMsgTypeCb)(MsnCmdProc *cmdproc, MsnMessage *msg);
34
35 struct _MsnTable
36 {
37 GHashTable *cmds;
38 GHashTable *msgs;
39 GHashTable *errors;
40
41 GHashTable *async;
42 GHashTable *fallback;
43 };
44
45 MsnTable *msn_table_new(void);
46 void msn_table_destroy(MsnTable *table);
47
48 void msn_table_add_cmd(MsnTable *table, char *command, char *answer,
49 MsnTransCb cb);
50 void msn_table_add_error(MsnTable *table, char *answer, MsnErrorCb cb);
51 void msn_table_add_msg_type(MsnTable *table, char *type, MsnMsgTypeCb cb);
52
53 #endif /* _MSN_TABLE_H_ */

mercurial