Go to the documentation of this file.
14 #ifndef __FLEXT_DEFS_ATTRVAR_H
15 #define __FLEXT_DEFS_ATTRVAR_H
21 #define FLEXT_ATTRSET_(VAR,TP) \
22 static bool FLEXT_SET_PRE(VAR)(flext_base *c,TP &arg) \
23 { FLEXT_CAST<thisType *>(c)->VAR = arg; return true; }
28 #define FLEXT_ATTRGET_(VAR,TP) \
29 static bool FLEXT_GET_PRE(VAR)(flext_base *c,TP &arg) \
30 { arg = (TP)FLEXT_CAST<thisType *>(c)->VAR; return true; }
40 #define FLEXT_ATTRSET_F(VAR) \
42 FLEXT_ATTRSET_(VAR,float)
45 #define FLEXT_ATTRSET_I(VAR) \
47 FLEXT_ATTRSET_(VAR,int)
50 #define FLEXT_ATTRSET_S(VAR) \
52 FLEXT_ATTRSET_(VAR,const t_symbol *)
55 #define FLEXT_ATTRSET_B(VAR) \
57 FLEXT_ATTRSET_(VAR,bool)
64 #define FLEXT_ATTRSET_E(VAR,TP) \
66 FLEXT_ATTRSET_(VAR,TP)
69 #define FLEXT_ATTRSET_V(VAR) \
70 static bool FLEXT_SET_PRE(VAR)(flext_base *c,flext::AtomList *&arg) \
71 { FLEXT_CAST<thisType *>(c)->VAR = *arg; return true; }
81 #define FLEXT_ATTRGET_F(VAR) \
83 FLEXT_ATTRGET_(VAR,float)
86 #define FLEXT_ATTRGET_I(VAR) \
88 FLEXT_ATTRGET_(VAR,int)
91 #define FLEXT_ATTRGET_S(VAR) \
93 FLEXT_ATTRGET_(VAR,const t_symbol *)
96 #define FLEXT_ATTRGET_B(VAR) \
98 FLEXT_ATTRGET_(VAR,bool)
105 #define FLEXT_ATTRGET_E(VAR,TP) \
107 FLEXT_ATTRGET_(VAR,TP)
110 #define FLEXT_ATTRGET_V(VAR) \
111 static bool FLEXT_GET_PRE(VAR)(flext_base *c,AtomList *&arg) \
112 { *arg = FLEXT_CAST<thisType *>(c)->VAR; return true; }
123 #define FLEXT_ATTRVAR_F(VAR) \
125 FLEXT_ATTRGET_F(VAR) FLEXT_ATTRSET_F(VAR)
128 #define FLEXT_ATTRVAR_I(VAR) \
130 FLEXT_ATTRGET_I(VAR) FLEXT_ATTRSET_I(VAR)
133 #define FLEXT_ATTRVAR_S(VAR) \
135 FLEXT_ATTRGET_S(VAR) FLEXT_ATTRSET_S(VAR)
138 #define FLEXT_ATTRVAR_B(VAR) \
140 FLEXT_ATTRGET_B(VAR) FLEXT_ATTRSET_B(VAR)
143 #define FLEXT_ATTRVAR_E(VAR,TP) \
145 FLEXT_ATTRGET_(VAR,TP) FLEXT_ATTRSET_(VAR,TP)
148 #define FLEXT_ATTRVAR_V(VAR) \
150 FLEXT_ATTRGET_V(VAR) FLEXT_ATTRSET_V(VAR)