17#ifndef __FLEXT_INTERNALS_H
18#define __FLEXT_INTERNALS_H
23#if FLEXT_SYS == FLEXT_SYS_PD
25#define object_new(clss) pd_new(clss)
26#define object_free(obj) pd_free(&(obj)->ob_pd)
28#define add_dsp(clss,meth) class_addmethod(clss, (t_method)meth,gensym(const_cast<char *>("dsp")),A_NULL)
29#define add_bang(clss,meth) class_addbang(clss, (t_method)meth)
30#define add_float(clss,meth) class_addfloat(clss, (t_method)meth)
31#define add_floatn(clss,meth,n) class_addmethod(clss, (t_method)meth,gensym(const_cast<char *>("ft" #n)),A_FLOAT,A_NULL)
32#define add_flint(clss,meth) class_addfloat(clss, (t_method)meth)
33#define add_flintn(clss,meth,n) class_addmethod(clss, (t_method)meth,gensym(const_cast<char *>("ft" #n)),A_FLOAT,A_NULL)
34#define add_method(clss,meth,text) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), A_NULL)
35#define add_methodG(clss,meth,text) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), A_GIMME,A_NULL)
36#define add_method1(clss,meth,text,a1) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), a1,A_NULL)
37#define add_method2(clss,meth,text,a1,a2) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), a1,a2,A_NULL)
38#define add_method3(clss,meth,text,a1,a2,a3) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), a1,a2,a3,A_NULL)
39#define add_method4(clss,meth,text,a1,a2,a3,a4) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), a1,a2,a3,a4,A_NULL)
40#define add_method5(clss,meth,text,a1,a2,a3,a5) class_addmethod(clss, (t_method)meth, gensym(const_cast<char *>(text)), a1,a2,a3,a4,a5,A_NULL)
41#define add_loadbang(clss,meth) class_addmethod(clss,(t_method)meth, gensym(const_cast<char *>("loadbang")), A_NULL)
42#define add_anything(clss,meth) class_addanything(clss,meth)
45#define newout_signal(clss) outlet_new(clss,const_cast<t_symbol *>(flext::sym_signal))
46#define newout_float(clss) outlet_new(clss,const_cast<t_symbol *>(flext::sym_float))
47#define newout_flint(clss) outlet_new(clss,const_cast<t_symbol *>(flext::sym_float))
48#define newout_list(clss) outlet_new(clss,const_cast<t_symbol *>(flext::sym_list))
49#define newout_symbol(clss) outlet_new(clss,const_cast<t_symbol *>(flext::sym_symbol))
50#define newout_anything(clss) outlet_new(clss,const_cast<t_symbol *>(flext::sym_anything))
52#define outlet_flint(o,v) outlet_float(o,(float)(v))
56#define qelem_new clock_new
57#define qelem_free clock_free
58#define qelem_set clock_delay
59#define qelem_front clock_delay
60#define qelem_unset clock_unset
66#elif FLEXT_SYS == FLEXT_SYS_MAX
69#define object_free(obj) freeobject((object *)(obj))
71#define add_dsp64(clss,meth) addmess((method)meth,const_cast<char *>("dsp64"),A_CANT,A_NOTHING)
72#define add_dsp(clss,meth) addmess((method)meth,const_cast<char *>("dsp"),A_CANT,A_NOTHING)
73#define add_bang(clss,meth) addbang((method)meth)
74#define add_float(clss,meth) addfloat((method)meth)
75#define add_floatn(clss,meth,n) addftx((method)meth,n)
76#define add_flint(clss,meth) addint((method)meth)
77#define add_flintn(clss,meth,n) addinx((method)meth,n)
78#define add_method(clss,meth,text) addmess((method)meth, text, A_NOTHING)
79#define add_methodG(clss,meth,text) addmess((method)meth, text, A_GIMME,A_NOTHING)
80#define add_method1(clss,meth,text,a1) addmess((method)meth, text, a1,A_NOTHING)
81#define add_method2(clss,meth,text,a1,a2) addmess((method)meth, text, a1,a2,A_NOTHING)
82#define add_method3(clss,meth,text,a1,a2,a3) addmess((method)meth, text, a1,a2,a3,A_NOTHING)
83#define add_method4(clss,meth,text,a1,a2,a3,a4) addmess((method)meth, text, a1,a2,a3,a4,A_NOTHING)
84#define add_method5(clss,meth,text,a1,a2,a3,a5) addmess((method)meth, text, a1,a2,a3,a4,a5,A_NOTHING)
85#define add_anything(clss,meth) addmess((method)meth, const_cast<char *>("anything"), A_GIMME,A_NOTHING)
87#define add_assist(clss,meth) addmess((method)meth, const_cast<char *>("assist"), A_CANT, A_NULL)
88#define add_loadbang(clss,meth) addmess((method)meth, const_cast<char *>("loadbang"), A_CANT, A_NULL)
89#define add_dblclick(clss,meth) addmess((method)meth, const_cast<char *>("dblclick"), A_CANT, A_NULL)
91#define newout_signal(clss) outlet_new(clss,"signal")
92#define newout_float(clss) outlet_new(clss,"float")
93#define newout_flint(clss) outlet_new(clss,"int")
94#define newout_list(clss) outlet_new(clss,"list")
95#define newout_symbol(clss) outlet_new(clss,"symbol")
96#define newout_anything(clss) outlet_new(clss,0)
98#define outlet_flint(o,v) outlet_int(o,(int)(v))
99#define outlet_symbol(o,s) outlet_anything(o,s,0,NULL)
107#define CRITON() short state = lockout_set(1)
108#define CRITOFF() lockout_set(state)
Definitions to unite Max/MSP and PD notions.
#define FLEXT_CAST
Switch for compilation of derived virtual classes.
Definition fldefs.h:27