OpenMAX Bellagio 0.9.3
omx_classmagic.h
Go to the documentation of this file.
1
39#ifndef OMX_CLASSMAGIC_H_
40#define OMX_CLASSMAGIC_H_
41
42
43#ifdef DOXYGEN_PREPROCESSING
44#define CLASS(a) class a { public:
45#define DERIVEDCLASS(a, b) class a : public b { public:
46#define ENDCLASS(a) a##_FIELDS };
47#else
48#define CLASS(a) typedef struct a a; \
49 struct a {
50#define DERIVEDCLASS(a, b) typedef struct a a; \
51 struct a {
52#define ENDCLASS(a) a##_FIELDS };
53#endif
54
55#if 0 /*EXAMPLES*/
59CLASS(A)
60#define A_FIELDS \
61 \
62 int a; \
63 \
64 int ash;
65ENDCLASS(A)
66
67
70DERIVEDCLASS(B,A)
71#define B_FIELDS A_FIELDS \
72 \
73 int b;
74ENDCLASS(B)
75
76
79DERIVEDCLASS(B2,A)
80#define B2_FIELDS A_FIELDS \
81 \
82 int b2;
83ENDCLASS(B2)
84
85
88DERIVEDCLASS(C,B)
89#define C_FIELDS B_FIELDS \
90 \
91 int c;
92ENDCLASS(C)
93
94#endif /* 0 */
95
96#endif
#define ENDCLASS(a)
#define DERIVEDCLASS(a, b)
#define CLASS(a)

Generated for OpenMAX Bellagio rel. 0.9.3 by  doxygen 1.5.1
SourceForge.net Logo