35a58d24a0d1568aa8778fc9fbb3525bd0c950bb
[profile/ivi/eobj.git] / tests / class_simple.h
1 #ifndef SIMPLE_H
2 #define SIMPLE_H
3
4 #include "Eo.h"
5
6 extern EAPI Eo_Op SIMPLE_BASE_ID;
7
8 enum {
9      SIMPLE_SUB_ID_A_SET,
10      SIMPLE_SUB_ID_A_PRINT,
11      SIMPLE_SUB_ID_CLASS_HI_PRINT,
12      SIMPLE_SUB_ID_LAST
13 };
14
15 typedef struct
16 {
17    int a;
18 } Simple_Public_Data;
19
20 #define SIMPLE_ID(sub_id) (SIMPLE_BASE_ID + sub_id)
21
22 #define simple_a_set(a) SIMPLE_ID(SIMPLE_SUB_ID_A_SET), EO_TYPECHECK(int, a)
23 #define simple_a_print() SIMPLE_ID(SIMPLE_SUB_ID_A_PRINT)
24 #define simple_class_hi_print() SIMPLE_ID(SIMPLE_SUB_ID_CLASS_HI_PRINT)
25
26 extern const Eo_Event_Description _SIG_A_CHANGED;
27 #define SIG_A_CHANGED (&(_SIG_A_CHANGED))
28
29 #define SIMPLE_CLASS simple_class_get()
30 const Eo_Class *simple_class_get(void) EINA_CONST;
31
32 #endif