#if !defined(IIIMF_HANDLER_H)
#define IIIMF_HANDLER_H


#include <iiimp-data.h>
#include <iiimp.h>


#ifdef	__cplusplus
extern "C" {
#endif


struct iiimf_message_handler_entry {
    char *					name;
    IIIMF_message_handler			proc;
    struct iiimf_message_handler_entry *	next;
};

extern IIIMF_status	iiimf_message_handler_entry_new(
				IIIMF_message_handler_entry ***	entry_ret);

extern void		iiimf_message_handler_entry_delete(
				IIIMF_message_handler_entry **	entry);

extern void		iiimf_message_handler_entry_item_delete(
				IIIMF_message_handler_entry *	enty);


extern IIIMF_status	iiimf_message_handler_call(
				IIIMF_im *	im,
				IIIMP_message *	message);


#ifdef	__cplusplus
}
#endif

#endif /* !IIIMF_HANDLER_H */


/* Local Variables: */
/* c-file-style: "iiim-project" */
/* End: */
