taskrambler  0.1.8
Web server and task management solution.
subject.h
Go to the documentation of this file.
1 /**
2  * \file
3  * Definition of the subject pattern implementation.
4  *
5  * \author Georg Hopp
6  *
7  * \copyright
8  * Copyright © 2012 Georg Hopp
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 3 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, see <http://www.gnu.org/licenses/>.
22  */
23 
24 #ifndef __SUBJECT_H__
25 #define __SUBJECT_H__
26 
27 typedef void (* fptr_subjectAttach)(void *, void *);
28 typedef void (* fptr_subjectDetach)(void *, void *);
29 typedef void (* fptr_subjectNotify)(void *);
30 
31 extern const struct interface i_Subject;
32 
33 struct i_Subject {
34  const struct interface * const _;
38 };
39 
40 extern void subjectAttach(void *, void *);
41 extern void subjectDetach(void *, void *);
42 extern void subjectNotify(void *);
43 
44 #endif // __SUBJECT_H__
45 
46 // vim: set ts=4 sw=4:
void subjectNotify(void *)
Definition: subject.c:44
fptr_subjectNotify notify
Definition: subject.h:37
fptr_subjectAttach attach
Definition: subject.h:35
void subjectDetach(void *, void *)
Definition: subject.c:38
fptr_subjectDetach detach
Definition: subject.h:36
void(* fptr_subjectAttach)(void *, void *)
Definition: subject.h:27
void(* fptr_subjectDetach)(void *, void *)
Definition: subject.h:28
void(* fptr_subjectNotify)(void *)
Definition: subject.h:29
const struct interface *const _
Definition: subject.h:34
void subjectAttach(void *, void *)
Definition: subject.c:32