Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25316
Modified Files: Tag: devel_0_39 desire.h m_imp.h Log Message: fork m_imp.h (copy+pasted into desire.h)
Index: desire.h =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/desire.h,v retrieving revision 1.1.2.38 retrieving revision 1.1.2.39 diff -C2 -d -r1.1.2.38 -r1.1.2.39 *** desire.h 10 Sep 2006 14:28:38 -0000 1.1.2.38 --- desire.h 19 Sep 2006 16:08:47 -0000 1.1.2.39 *************** *** 48,51 **** --- 48,131 ---- #endif
+ /* ----------------------- m_imp.h ---------------------------------------------------*/ + + /* the structure for a method handler ala Max */ + typedef struct _methodentry { + t_symbol *me_name; + t_gotfn me_fun; + t_atomtype me_arg[MAXPDARG+1]; + } t_methodentry; + + EXTERN_STRUCT _widgetbehavior; + + typedef void (*t_bangmethod)(t_pd *x); + typedef void (*t_pointermethod)(t_pd *x, t_gpointer *gp); + typedef void (*t_floatmethod)(t_pd *x, t_float f); + typedef void (*t_symbolmethod)(t_pd *x, t_symbol *s); + typedef void (*t_listmethod)(t_pd *x, t_symbol *s, int argc, t_atom *argv); + typedef void (*t_anymethod)(t_pd *x, t_symbol *s, int argc, t_atom *argv); + + struct _class + { + t_symbol *c_name; /* name (mostly for error reporting) */ + t_symbol *c_helpname; /* name of help file */ + t_symbol *c_externdir; /* directory extern was loaded from */ + size_t c_size; /* size of an instance */ + t_methodentry *c_methods; /* methods other than bang, etc below */ + int c_nmethod; /* number of methods */ + t_method c_freemethod; /* function to call before freeing */ + t_bangmethod c_bangmethod; /* common methods */ + t_pointermethod c_pointermethod; + t_floatmethod c_floatmethod; + t_symbolmethod c_symbolmethod; + t_listmethod c_listmethod; + t_anymethod c_anymethod; + #ifndef DESIRE + struct _widgetbehavior *c_wb; /* "gobjs" only */ + #endif + struct _parentwidgetbehavior *c_pwb;/* widget behavior in parent */ + t_savefn c_savefn; /* function to call when saving */ + #ifndef DESIRE + t_propertiesfn c_propertiesfn; /* function to start prop dialog */ + #endif + int c_floatsignalin; /* onset to float for signal input */ + char c_gobj; /* true if is a gobj */ + char c_patchable; /* true if we have a t_object header */ + char c_firstin; /* if patchable, true if draw first inlet */ + char c_drawcommand; /* a drawing command for a template */ + t_symbol *c_firsttip; + #ifdef DESIRE + t_symbol **c_fields; /* names of fields aka attributes, and I don't mean the #V attributes. */ + int c_nfields; /* ... and how many of them */ + t_notice c_notice; /* observer method */ + #endif + }; + + /* m_obj.c */ + EXTERN int obj_noutlets(t_object *x); + EXTERN int obj_ninlets(t_object *x); + EXTERN t_outconnect *obj_starttraverseoutlet(t_object *x, t_outlet **op, + int nout); + EXTERN t_outconnect *obj_nexttraverseoutlet(t_outconnect *lastconnect, + t_object **destp, t_inlet **inletp, int *whichp); + EXTERN t_outconnect *obj_connect(t_object *source, int outno, + t_object *sink, int inno); + EXTERN void obj_disconnect(t_object *source, int outno, t_object *sink, + int inno); + EXTERN void outlet_setstacklim(void); + EXTERN int obj_issignalinlet(t_object *x, int m); + EXTERN int obj_issignaloutlet(t_object *x, int m); + EXTERN int obj_nsiginlets(t_object *x); + EXTERN int obj_nsigoutlets(t_object *x); + EXTERN int obj_siginletindex(t_object *x, int m); + EXTERN int obj_sigoutletindex(t_object *x, int m); + + /* misc */ + EXTERN void glob_evalfile(t_pd *ignore, t_symbol *name, t_symbol *dir); + EXTERN void glob_initfromgui(void *dummy, t_symbol *s, int argc, t_atom *argv); + EXTERN void glob_quit(void *dummy); + + /* ----------------------- g_canvas.h ------------------------------------------------*/ + /* i don't know whether this is currently used at all in DesireData. -- matju 2006.09 */ #ifdef GARRAY_THREAD_LOCK
Index: m_imp.h =================================================================== RCS file: /cvsroot/pure-data/pd/src/m_imp.h,v retrieving revision 1.3.4.1.2.5 retrieving revision 1.3.4.1.2.6 diff -C2 -d -r1.3.4.1.2.5 -r1.3.4.1.2.6 *** m_imp.h 19 Sep 2006 05:59:25 -0000 1.3.4.1.2.5 --- m_imp.h 19 Sep 2006 16:08:47 -0000 1.3.4.1.2.6 *************** *** 11,14 **** --- 11,17 ---- /* LATER consider whether to use 'char' for method arg types to save space */ #ifndef __m_imp_h_ + #ifdef DESIRE + #include "desire.h" + #else
/* the structure for a method handler ala Max */ *************** *** 59,63 **** t_symbol *c_firsttip; #ifdef DESIRE ! t_symbol **c_fields; /* names of fields aka attributes. */ int c_nfields; /* ... and how many of them */ t_notice c_notice; /* observer method */ --- 62,66 ---- t_symbol *c_firsttip; #ifdef DESIRE ! t_symbol **c_fields; /* names of fields aka attributes, and I don't mean the #V attributes. */ int c_nfields; /* ... and how many of them */ t_notice c_notice; /* observer method */ *************** *** 88,91 **** --- 91,95 ---- EXTERN void glob_initfromgui(void *dummy, t_symbol *s, int argc, t_atom *argv); EXTERN void glob_quit(void *dummy); + #endif /* DESIRE */ #define __m_imp_h_ #endif /* __m_imp_h_ */