#ifndef __SUBJECT_H__ #define __SUBJECT_H__ typedef void (* fptr_subjectAttach)(void *, void *); typedef void (* fptr_subjectDetach)(void *, void *); typedef void (* fptr_subjectNotify)(void *); extern const struct interface i_Subject; struct i_Subject { const struct interface * const _; fptr_subjectAttach attach; fptr_subjectDetach detach; fptr_subjectNotify notify; }; extern void subjectAttach(void *, void *); extern void subjectDetach(void *, void *); extern void subjectNotify(void *); #endif // __SUBJECT_H__ // vim: set ts=4 sw=4: