void main(void) { setup(&gspline_class, gspline_new, (method)gspline_free, (short)sizeof(t_gspline), gspline_menufun, A_GIMME, 0); addmess((method)gspline_dsp, "dsp", A_CANT, 0); addbang((method)gspline_bang); addfloat((method)gspline_float); addint((method)gspline_int); addmess((method)gspline_list, "list", A_GIMME, 0); addmess((method)gspline_deriv, "deriv", A_GIMME, 0); addmess((method)gspline_restore, "done", 0); addmess((method)gspline_color, "color", A_DEFLONG, 0); addmess((method)gspline_brgb, "brgb", A_DEFLONG, A_DEFLONG, A_DEFLONG, 0); addmess((method)gspline_frgb, "frgb", A_DEFLONG, A_DEFLONG, A_DEFLONG, 0); addmess((method)gspline_domain, "domain", A_DEFLONG, A_DEFLONG, 0); addmess((method)gspline_range, "range", A_DEFFLOAT, 0); addmess((method)gspline_update, "update", A_CANT, 0); addmess((method)gspline_assist, "assist", A_CANT, 0); addmess((method)gspline_setautoderiv, "autoderiv", 0); addmess((method)gspline_logamp, "logamp", 0); addmess((method)gspline_linamp, "linamp", 0); addmess((method)gspline_save, "psave", A_CANT, 0); bindMeBaby = gensym("#X"); // symbol that we will use for restore rescopy('STR#',RES_ID); dsp_initboxclass(); }
int main(void) { setup((t_messlist **)&gendyn_class, (method)gendyn_new, (method)gendyn_free, (short)sizeof(t_gendyn), 0L, A_GIMME, 0); version(0); addmess((method) version, "version", 0); addmess((method)gendyn_dsp, "dsp", A_CANT, 0); addmess((method)gendyn_anything, "anything", A_GIMME, 0); addint((method)gendyn_int); addmess((method)gendyn_assist, "assist", A_CANT, 0); addmess((method)gendyn_tellmeeverything, "tellmeeverything", 0); addmess((method)whichamp, "whichamp", A_LONG, 0); addmess((method)whichdur, "whichdur", A_LONG, 0); addmess((method)aamp, "aamp", A_FLOAT, 0); addmess((method)adur, "adur", A_FLOAT, 0); addmess((method)minfreq, "minfreq", A_FLOAT, 0); addmess((method)maxfreq, "maxfreq", A_FLOAT, 0); addmess((method)scaleamp, "scaleamp", A_FLOAT, 0); addmess((method)scaledur, "scaledur", A_FLOAT, 0); addmess((method)freq, "freq", A_FLOAT, 0); dsp_initclass(); return 0; }
void main(void) { void *p,*q,*attr; long attrflags; setup(&max_jit_op_class, max_jit_op_new, (method)max_jit_op_free, (short)sizeof(t_max_jit_op), 0L, A_GIMME, 0); p = max_jit_classex_setup(calcoffset(t_max_jit_op,obex)); q = jit_class_findbyname(gensym("jit_op")); addmess((method)max_jit_op_jit_matrix, "jit_matrix", A_GIMME, 0); max_jit_classex_mop_wrap(p,q,MAX_JIT_MOP_FLAGS_OWN_JIT_MATRIX); max_jit_classex_mop_mproc(p,q,max_jit_op_mproc); //custom mproc max_jit_classex_standard_wrap(p,q,0); attrflags = JIT_ATTR_GET_DEFER_LOW | JIT_ATTR_SET_USURP_LOW ; attr = jit_object_new(_jit_sym_jit_attr_offset_array,"val",_jit_sym_atom,JIT_MATRIX_MAX_PLANECOUNT,attrflags, (method)0,(method)max_jit_op_val,calcoffset(t_max_jit_op,valcount),calcoffset(t_max_jit_op,val)); max_jit_classex_addattr(p,attr); addint((method)max_jit_op_int); addfloat((method)max_jit_op_float); addmess((method)max_jit_op_list, "list", A_GIMME, 0); addmess((method)max_jit_mop_assist, "assist", A_CANT,0); }
void main(void) { LITTER_CHECKTIMEOUT(kClassName); // Standard Max/MSP initialization mantra setup( &gObjectClass, // Pointer to our class definition (method) SssNew, // Instance creation function (method) dsp_free, // Default deallocation function sizeof(tPink), // Class object size NIL, // No menu function A_DEFLONG, // Optional arguments: 1. NN Factor 0); dsp_initclass(); // Messages addint ((method) SssNN); addmess ((method) SssTattle, "dblclick", A_CANT, 0); addmess ((method) SssTattle, "tattle", A_NOTHING); addmess ((method) SssAssist, "assist", A_CANT, 0); addmess ((method) SssInfo, "info", A_CANT, 0); // MSP-Level messages LITTER_TIMEBOMB addmess ((method) SssDSP, "dsp", A_CANT, 0); //Initialize Litter Library LitterInit(kClassName, 0); Taus88Init(); }
void main(void) { LITTER_CHECKTIMEOUT(kClassName); // Standard Max setup() call setup( &gObjectClass, // Pointer to our class definition (method) SinkerNew, // Instantiation method (method) dsp_free, // Default deallocation function (short) sizeof(objSinker), // Class object size NIL, // No menu function A_GIMME, // List of arguments (one value per outlet) 0); // Standard Max Messages addint ((method) SinkerInt); addfloat((method) SinkerFloat); // MSP Message LITTER_TIMEBOMB addmess ((method) SinkerDSP, "dsp", A_CANT, 0); // Info messages addmess ((method) SinkerAssist, "assist", A_CANT, 0); addmess ((method) SinkerInfo, "info", A_CANT, 0); addmess ((method) SinkerTattle, "tattle", A_NOTHING); addmess ((method) SinkerTattle, "dblclick", A_CANT, 0); // Initialize Litter Library LitterInit(kClassName, 0); }
// Main function void main(void) { post("gaussdraw object version " VERSION " by Tristan Jehan"); post("copyright © 2001 Massachusetts Institute of Technology"); post(""); setup( // Setup Object (Messlist**) &gaussdraw_class, // Pointer to class (method) gaussdraw_new, // Constructor (method) gaussdraw_free, // Destructor (short) sizeof(t_gaussdraw), // Class Size 0L, A_GIMME, 0); /* bind your methods to symbols */ addbang((method)gaussdraw_bang); addfloat((method)gaussdraw_float); addint((method)gaussdraw_int); addinx((method)gaussdraw_int_1,1); addinx((method)gaussdraw_int_2,2); addftx((method)gaussdraw_float_1,1); addftx((method)gaussdraw_float_2,2); addmess((method)gaussdraw_assist,"assist",A_CANT,0); addmess((method)gaussdraw_min,"min",A_GIMME,0); addmess((method)gaussdraw_max,"max",A_GIMME,0); addmess((method)gaussdraw_numpts,"numbars",A_GIMME,0); addmess((method)gaussdraw_default,"default",A_GIMME,0); addmess((method)gaussdraw_print,"print",A_GIMME,0); /* list object in the new object list */ finder_addclass("Statistics", "gaussdraw"); rescopy('STR#', RES_ID); }
//primary MSP funcs void main(void) { setup((struct messlist **)&cabasa_class, (method)cabasa_new, (method)dsp_free, (short)sizeof(t_cabasa), 0L, A_DEFFLOAT, 0); addmess((method)cabasa_dsp, "dsp", A_CANT, 0); addmess((method)cabasa_assist,"assist",A_CANT,0); addfloat((method)cabasa_float); addint((method)cabasa_int); addbang((method)cabasa_bang); dsp_initclass(); rescopy('STR#',9332); }
void main(void) { setup(&sigflip_class, sigflip_new, (method)dsp_free, (short)sizeof(t_sigflip), 0L, A_DEFFLOAT, 0); addmess((method)sigflip_dsp, "dsp", A_CANT, 0); addfloat((method)sigflip_float); addint((method)sigflip_int); addmess((method)sigflip_assist,"assist",A_CANT,0); dsp_initclass(); post("flip~: by r. luke dubois, cmc"); }
//primary MSP funcs void main(void) { setup((struct messlist **)&guiro_class, (method)guiro_new, (method)dsp_free, (short)sizeof(t_guiro), 0L, A_DEFFLOAT, 0); addmess((method)guiro_dsp, "dsp", A_CANT, 0); addmess((method)guiro_assist,"assist",A_CANT,0); addfloat((method)guiro_float); addint((method)guiro_int); addbang((method)guiro_bang); dsp_initclass(); rescopy('STR#',9333); }
void main(void) { setup( (t_messlist **)&stringpitch_class, stringpitch_new, (method)stringpitch_free, (short)sizeof(t_stringpitch), 0L, A_GIMME, 0); addmess((method)stringpitch_dsp, "dsp", A_CANT, 0); addmess((method)stringpitch_assist, "assist", A_CANT, 0); addfloat((method)stringpitch_float); addint((method)stringpitch_int); dsp_initclass(); rescopy('STR#', RES_ID); }
void main(void) { setup( (t_messlist **)&getonset_class, getonset_new, (method)getonset_free, (short)sizeof(t_getonset), 0L, A_GIMME, 0); addmess((method)getonset_dsp, "dsp", A_CANT, 0); addmess((method)getonset_assist, "assist", A_CANT, 0); addfloat((method)getonset_float); addint((method)getonset_int); dsp_initclass(); rescopy('STR#', RES_ID); }
void main() { #ifdef MDebug graphmodelutiltests(); #endif setup((t_messlist **)&EermMaxClass, (method)EermMaxNew, (method)EermMaxFree, (short)sizeof(EermMax), 0L, A_GIMME, 0); addbang((method)EermMaxBang); addint((method)EermMaxInt); addmess((method)EermMaxSimplexSetEntry, "SimplexSetEntry", A_GIMME, 0); addmess((method)EermMaxSetDt, "SetDt", A_GIMME, 0); addmess((method)EermMaxSetForce, "SetForce", A_GIMME, 0); addmess((method)EermMaxSetWeights, "SetWeights", A_GIMME, 0); addmess((method)EermMaxSetSlew, "SetSlew", A_GIMME, 0); addmess((method)EermMaxForceMeter, "ForceMeter", A_GIMME, 0); addmess((method)EermMaxPostSimplices, "PostSimplices", A_GIMME, 0); addmess((method)EermMaxPostTokens, "PostTokens", A_GIMME, 0); addmess((method)EermMaxSimplexNew, "SimplexNew", A_GIMME, 0); addmess((method)EermMaxSimplexDelete, "SimplexDelete", A_GIMME, 0); addmess((method)EermMaxSimplexSetTp, "SimplexSetTp", A_GIMME, 0); addmess((method)EermMaxNodeNew, "NodeNew", A_GIMME, 0); addmess((method)EermMaxNodeSetMean, "NodeSetMean", A_GIMME, 0); addmess((method)EermMaxNodeSetVar, "NodeSetVar", A_GIMME, 0); addmess((method)EermMaxNodeSetLabelMsg, "NodeSetLabel", A_GIMME, 0); addmess((method)EermMaxStulleTokenNew, "StulleTokenNew", A_GIMME, 0); addmess((method)EermMaxTokenNew, "TokenNew", A_GIMME, 0); addmess((method)EermMaxTokenDelete, "TokenDelete", A_GIMME, 0); addmess((method)EermMaxTokenSetCoord, "TokenSetCoord", A_GIMME, 0); addmess((method)EermMaxTokenSetMass, "TokenSetMass", A_GIMME, 0); addmess((method)EermMaxTokenSetDamping, "TokenSetDamping", A_GIMME, 0); addmess((method)EermMaxTokenSetExpScale, "TokenSetExpScale", A_GIMME, 0); addmess((method)EermMaxTokenSetTokenCoupling, "TokenSetTokenCoupling", A_GIMME, 0); addmess((method)EermMaxTokenSetWeights, "TokenSetWeights", A_GIMME, 0); addmess((method)EermMaxTokenSetSimplex, "TokenSetSimplex", A_GIMME, 0); addmess((method)EermMaxClockEvolution, "ClockEvolution", A_LONG, 0); addmess((method)EermMaxClockOnce, "ClockOnce", A_GIMME, 0); addmess((method)EermMaxTokenFeatureUpdate, "anything", A_GIMME, 0); // Feature In finder_addclass("Data","Eerm"); }
int main() { setup((t_messlist **)&thresh_class, (method)thresh_new, (method)thresh_free, (short)sizeof(t_thresh), 0L, A_DEFLONG, 0); addint((method)thresh_int); addmess((method)thresh_list,"list", A_GIMME, 0); addinx((method)thresh_in1,1); addfloat((method)thresh_float); addmess((method)thresh_assist,"assist",A_CANT,0); addmess((method)thresh_inletinfo, "inletinfo", A_CANT, 0); ps_list = gensym("list"); finder_addclass("Lists","thresh"); return 0; }
int main() { setup((t_messlist **)&iter_class, (method)iter_new, (method)iter_free, (short)sizeof(t_iter), 0L, A_DEFLONG, 0); addint((method)iter_int); addbang((method)iter_bang); addmess((method)iter_list,"list", A_GIMME, 0); addmess((method)iter_anything,"anything",A_GIMME,0); addmess((method)iter_assist,"assist",A_CANT,0); addfloat((method)iter_float); ps_bang = gensym("bang"); finder_addclass("Lists","iter"); return 0; }
int main() { setup((t_messlist **)&buddy_class, (method)buddy_new, (method)buddy_free, (short)sizeof(t_buddy), 0L, A_DEFLONG, 0); addint((method)buddy_int); addbang((method)buddy_bang); addfloat((method)buddy_float); addmess((method)buddy_list, "list", A_GIMME, 0); addmess((method)buddy_clear, "clear", 0); addmess((method)buddy_anything, "anything", A_GIMME, 0); addmess((method)buddy_assist,"assist",A_CANT,0); addmess((method)buddy_inletinfo,"inletinfo",A_CANT,0); finder_addclass("Right-to-Left","buddy"); ps_list = gensym("list"); return 0; }
int main(void) { setup((t_messlist **)&wlet_class, (method)wlet_new, (method)wlet_free, (short)sizeof(t_wlet), 0L, A_SYM, A_DEFSYM, A_DEFLONG, A_DEFLONG, A_DEFLONG, 0); version(0); addmess((method) version, "version", 0); addmess((method)wlet_dsp, "dsp", A_CANT, 0); addmess((method)wlet_anything, "anything", A_GIMME, 0); addint((method)wlet_int); addmess((method)wlet_assist, "assist", A_CANT, 0); addmess((method)wlet_tellmeeverything, "tellmeeverything", 0); dsp_initclass(); return 0; }
void main(void) { ps_rectangular = gensym("rectangular"); ps_hanning = gensym("hanning"); ps_hamming = gensym("hamming"); ps_blackman = gensym("blackman"); setup( ¢roid_class, centroid_new, (method)centroid_free, (short)sizeof(t_centroid), 0L, A_GIMME, 0); addmess((method)centroid_dsp, "dsp", A_CANT, 0); addmess((method)centroid_assist, "assist", A_CANT, 0); addfloat((method)centroid_float); addint((method)centroid_int); dsp_initclass(); rescopy('STR#', RES_ID); }
void main(void) { setup((t_messlist **)&kbuffer_class,(method) kbuffer_new, (method)kbuffer_dsp_free, (short)sizeof(t_kbuffer), 0L, A_GIMME, 0); addmess((method)kbuffer_dsp, "dsp", A_CANT, 0); addmess((method)kbuffer_assist, "assist", A_CANT, 0); addmess((method)kbuffer_record, "record", 0); addmess((method)kbuffer_play, "play", 0); addmess((method)kbuffer_loop, "loop", 0); addmess((method)kbuffer_stop, "stop", 0); addmess((method)kbuffer_dump, "dump", 0); addmess((method)kbuffer_info, "info", 0); addmess((method)kbuffer_speed, "speed", A_FLOAT, 0); addmess((method)kbuffer_size, "size", A_FLOAT, 0); addmess((method)kbuffer_ksrate, "ksrate", A_FLOAT, 0); addfloat((method)kbuffer_float); addint((method)kbuffer_int); dsp_initclass(); post("%s %s",OBJECT_NAME, LYONPOTPOURRI_MSG); }
void main(void) { long int tick = gettime(); setup((t_messlist**)&logistic_class,(method)logistic_new,0L,(short)sizeof(logistic),0L, A_GIMME,0); addbang((method)logistic_bang); addmess((method)logistic_reset,"reset", A_GIMME, 0); addmess((method)logistic_set,"set", A_GIMME, 0); addint((method)logistic_int); addfloat((method)logistic_float); addmess((method)logistic_lambda,"lambda", A_DEFFLOAT, 0); addmess((method)logistic_seed,"seed", A_DEFFLOAT, 0); addmess((method)logistic_om,"om", A_DEFLONG, 0); addmess((method)logistic_assist,"assist", A_CANT, 0); post("A-Chaos Lib :: a-logistic " __DATE__" "__TIME__" © a n d r Ž s i e r 2 0 0 4 all rights reserved",tick, 0); }
int main(void){ setup((t_messlist **)&rdist_class, (method)rdist_new, (method)rdist_free, (short)sizeof(t_rdist), 0L, A_GIMME, 0); addmess((method)version, "version", 0); addmess((method)rdist_assist, "assist", A_CANT, 0); addbang((method)rdist_bang); addmess((method)rdist_distlist, "distlist", A_DEFLONG, 0); addint((method)rdist_int); addfloat((method)rdist_float); addmess((method)rdist_list, "list", A_GIMME, 0); addmess((method)rdist_anything, "anything", A_GIMME, 0); addmess((method)rdist_nonparametric, "nonparametric", A_GIMME, 0); addmess((method)rdist_seed, "seed", A_LONG, 0); addmess((method)rdist_tellmeeverything, "tellmeeverything", 0); version(0); return 0; }
void flext_base::SetProxies(t_class *c,bool dsp) { #if FLEXT_SYS == FLEXT_SYS_PD // for leftmost inlet class_addbang(c,cb_bang); if(!dsp) class_addfloat(c,cb_float); class_addsymbol(c,cb_symbol); // class_addpointer(c,cb_pointer); class_addlist(c,cb_anything); class_addanything(c,cb_anything); // proxy for extra inlets if(UNLIKELY(!px_class)) { // only once px_class = class_new(gensym(const_cast<char *>(" flext_base proxy ")),NULL,NULL,sizeof(px_object),CLASS_PD|CLASS_NOINLET, A_NULL); class_addbang(px_class,px_object::px_bang); // for other inlets class_addfloat(px_class,px_object::px_float); // for other inlets class_addsymbol(px_class,px_object::px_symbol); // for other inlets // class_addpointer(px_class,px_object::px_pointer); // for other inlets class_addlist(px_class,px_object::px_anything); // for other inlets class_addanything(px_class,px_object::px_anything); // for other inlets } #elif FLEXT_SYS == FLEXT_SYS_MAX addbang((method)cb_bang); addint((method)cb_int); addfloat((method)cb_float); addmess((method)cb_anything,"list",A_GIMME,A_NOTHING); // must be explicitly given, otherwise list elements are distributed over inlets addmess((method)cb_anything,"anything",A_GIMME,A_NOTHING); #else #error Not implemented! #endif // setup non-leftmost ints and floats ADD_PROXYMSG(c,1); ADD_PROXYMSG(c,2); ADD_PROXYMSG(c,3); ADD_PROXYMSG(c,4); ADD_PROXYMSG(c,5); ADD_PROXYMSG(c,6); ADD_PROXYMSG(c,7); ADD_PROXYMSG(c,8); ADD_PROXYMSG(c,9); }
void main(fptr *f) { long oldA4; // this code is a 68K-only macro oldA4 = SetCurrentA4(); // get correct value of A4 RememberA4(); // store inside code resource // this is not necessary (but harmless) on PowerPC FNS = f; /* tell Max about your class. The cast to short is important for 68K */ setup(&myobject_class, myobject_new,0L, (short)sizeof(MyObject), 0L, A_DEFLONG, 0); /* bind your methods to symbols */ addbang((method)myobject_bang); addint((method)myobject_int); addmess((method)myobject_FullPacket, "FullPacket", A_LONG, A_LONG, 0); addmess((method)myobject_set, "set", A_LONG, 0); /* list object in the new object list */ finder_addclass("Data","dereffer"); // restore old value of A4 (68K only) RestoreA4(oldA4); }
void main(void) { setup((t_messlist **)&vdb_class, (method)vdb_new, (method)vdb_free, (short)sizeof(t_vdb), 0, A_GIMME, 0); addmess((method)vdb_dsp, "dsp", A_CANT, 0); addfloat((method)vdb_float); addint((method)vdb_int); addmess((method)vdb_assist, "assist", A_CANT, 0); addmess((method)vdb_protect,"protect",A_FLOAT,0); addmess((method)vdb_inf_hold,"inf_hold",A_FLOAT,0); addmess((method)vdb_maxdelay,"maxdelay",A_FLOAT,0); addmess((method)vdb_always_update,"always_update",A_FLOAT,0); addmess((method)vdb_mute, "mute", A_FLOAT, 0); addmess((method)vdb_show, "show", 0); addmess((method)vdb_update_buffer, "update_buffer", 0); addmess((method)vdb_interpolate, "interpolate", A_FLOAT, 0); dsp_initclass(); post("%s %s",OBJECT_NAME, LYONPOTPOURRI_MSG); }
void main(void) { setup((t_messlist **)&vd_class, (method)vd_new, (method)vd_free, (short)sizeof(t_vd), 0, A_GIMME, 0); addmess((method)vd_dsp, "dsp", A_CANT, 0); addfloat((method)vd_float); addint((method)vd_int); addmess((method)vd_assist, "assist", A_CANT, 0); addmess((method)vd_protect,"protect",A_DEFFLOAT,0); addmess((method)vd_mute, "mute", A_LONG, 0); addmess((method)vd_filter, "filter", A_LONG, 0); addmess((method)vd_coef, "coef", A_FLOAT, 0); addmess((method)vd_show, "show", 0); addmess((method)vd_clear, "clear", 0); addmess((method)vd_inf_hold, "inf_hold", A_FLOAT, 0); addmess((method)vd_interpolate, "interpolate", A_LONG, 0); addmess((method)vd_copy_to_buffer, "copy_to_buffer", A_GIMME, 0); dsp_initclass(); post("%s %s",OBJECT_NAME, LYONPOTPOURRI_MSG); }
void main(void) { long attrflags; void *p,*attr; setup(&max_jit_turtle_class, max_jit_turtle_new, (method)max_jit_turtle_free, (short)sizeof(t_max_jit_turtle), 0L, A_GIMME, 0); p = max_jit_classex_setup(calcoffset(t_max_jit_turtle,obex)); attrflags = JIT_ATTR_GET_DEFER_LOW | JIT_ATTR_SET_USURP_LOW ; // origin -- where to start drawing from (or reset to with a 'reset' message) attr = jit_object_new(_jit_sym_jit_attr_offset_array,"origin",_jit_sym_long,2,attrflags, (method)0,(method)0,calcoffset(t_max_jit_turtle,origincount),calcoffset(t_max_jit_turtle,origin)); max_jit_classex_addattr(p,attr); // angle -- angle factor for turning the turtle attr = jit_object_new(_jit_sym_jit_attr_offset,"angle",_jit_sym_long,attrflags, (method)0,(method)0,calcoffset(t_max_jit_turtle,angle)); max_jit_classex_addattr(p,attr); // scale -- stepsize for moving the turtle attr = jit_object_new(_jit_sym_jit_attr_offset,"scale",_jit_sym_long,attrflags, (method)0,(method)0,calcoffset(t_max_jit_turtle,scale)); max_jit_classex_addattr(p,attr); // clearmode -- send a clear on reset or not attr = jit_object_new(_jit_sym_jit_attr_offset,"clearmode",_jit_sym_long,attrflags, (method)0,(method)0,calcoffset(t_max_jit_turtle,clearmode)); max_jit_classex_addattr(p,attr); addmess((method)max_jit_turtle_reset, "reset", A_GIMME,0); max_jit_classex_standard_wrap(p,NULL,0); addmess((method)max_jit_turtle_assist, "assist", A_CANT,0); // addbang((method)max_jit_turtle_bang); addint((method)max_jit_turtle_int); max_jit_class_addmethods(jit_class_findbyname(gensym("jit_turtle"))); }
void main(void) { setup((t_messlist **)&presidency_class, (method)presidency_new, (method)presidency_free, (short)sizeof(t_presidency), 0, A_GIMME,0); addmess((method)presidency_dsp, "dsp", A_CANT, 0); addmess((method)presidency_assist,"assist",A_CANT,0); addfloat((method)presidency_float); addint((method)presidency_int); addbang((method)presidency_bangname); addmess((method)presidency_mute, "mute", A_FLOAT, 0); addmess((method)presidency_fftinfo, "fftinfo", 0); addmess((method)presidency_playthrough, "playthrough", A_DEFFLOAT, 0); addmess((method)presidency_size, "size", A_DEFFLOAT, 0); addmess((method)presidency_overlap, "overlap", A_DEFFLOAT, 0); addmess((method)presidency_winfac, "winfac", A_DEFFLOAT, 0); addmess((method)presidency_verbose, "verbose", A_DEFFLOAT, 0); addmess((method)presidency_low_freq, "low_freq", A_DEFFLOAT, 0); addmess((method)presidency_high_freq, "high_freq", A_DEFFLOAT, 0); addmess((method)presidency_acquire_sample, "acquire_sample", 0); addmess((method)presidency_abs_thresh, "abs_thresh", A_FLOAT, 0); dsp_initclass(); post("%s %s",OBJECT_NAME,FFTEASE_ANNOUNCEMENT); }
void main(void) { post("Noisiness~ object version " VERSION " by Tristan Jehan (Media Laboratory)"); post("copyright © 2001 Massachusetts Institute of Technology"); post(""); ps_rectangular = gensym("rectangular"); ps_hanning = gensym("hanning"); ps_hamming = gensym("hamming"); ps_blackman62 = gensym("blackman62"); ps_blackman70 = gensym("blackman70"); ps_blackman74 = gensym("blackman74"); ps_blackman92 = gensym("blackman92"); setup((Messlist **)&noisiness_class, (method)noisiness_new, (method)noisiness_free, (short)sizeof(t_noisiness), 0L, A_GIMME, 0); addmess((method)noisiness_dsp, "dsp", A_CANT, 0); addmess((method)noisiness_assist, "assist", A_CANT, 0); addfloat((method)noisiness_float); addint((method)noisiness_int); dsp_initclass(); rescopy('STR#', RES_ID); }
void main(void) { LITTER_CHECKTIMEOUT(kClassName); // Standard Max/MSP/Litter setup() call setup( &gObjectClass, // Pointer to our class definition (method) GalliardNew, // Instance creation function (method) dsp_free, // Custom deallocation function (short) sizeof(objPolynom), // Class object size NIL, // No menu function A_GIMME, // Variable-length argument list 0); dsp_initclass(); // Messages addmess ((method) GalliardCoeffs, "list", A_GIMME, 0); addfloat((method) GalliardConstFt); addint ((method) GalliardConstInt); // MSP-Level messages LITTER_TIMEBOMB addmess ((method) GalliardDSP, "dsp", A_CANT, 0); // Informational messages addmess ((method) GalliardTattle, "dblclick", A_CANT, 0); addmess ((method) GalliardTattle, "tattle", A_NOTHING); addmess ((method) GalliardAssist, "assist", A_CANT, 0); addmess ((method) GalliardInfo, "info", A_CANT, 0); // Initialize Litter Library LitterInit(kClassName, 0); }
void mglin(float ***u, int n, int ncycle){ /* Full Multigrid Algorithm for solution of the steady state heat equation with forcing. On input u[1..n][1..n] contains the right-hand side ρ, while on output it returns the solution. The dimension n must be of the form 2j + 1 for some integer j. (j is actually the number of grid levels used in the solution, called ng below.) ncycle is the number of V-cycles to be used at each level. */ unsigned int j,jcycle,jj,jpost,jpre,nf,ng=0,ngrid,nn; /*** setup multigrid jagged arrays ***/ float ***iu[NGMAX+1]; /* stores solution at each grid level */ float ***irhs[NGMAX+1]; /* stores rhs at each grid level */ float ***ires[NGMAX+1]; /* stores residual at each grid level */ float ***irho[NGMAX+1]; /* stores rhs during intial solution of FMG */ /*** use bitshift to find the number of grid levels, stored in ng ***/ nn=n; while (nn >>= 1) ng++; /*** some simple input checks ***/ if (n != 1+(1L << ng)) nrerror("n-1 must be a power of 2 in mglin."); if (ng > NGMAX) nrerror("increase NGMAX in mglin."); /***restrict solution to next coarsest grid (irho[ng-1])***/ nn=n/2+1; ngrid=ng-1; irho[ngrid]=f3tensor(1,nn,1,nn,1,nn); rstrct(irho[ngrid],u,nn);/* coarsens rhs (u at this point) to irho on mesh size nn */ /***continue setting up coarser grids down to coarsest level***/ while (nn > 3) { nn=nn/2+1; irho[--ngrid]=f3tensor(1,nn,1,nn,1,nn); rstrct(irho[ngrid],irho[ngrid+1],nn); } /***now setup and solve coarsest level iu[1],irhs[1] ***/ nn=3; iu[1]=f3tensor(1,nn,1,nn,1,nn); irhs[1]=f3tensor(1,nn,1,nn,1,nn); slvsml(iu[1],irho[1]); /* solve the small system directly */ free_f3tensor(irho[1],1,nn,1,nn,1,nn); ngrid=ng; /* reset ngrid to original size */ for (j=2;j<=ngrid;j++) { /* loop over coarse to fine, starting at level 2 */ printf("at grid level %d\n",j); nn=2*nn-1; iu[j]=f3tensor(1,nn,1,nn,1,nn); /* setup grids for lhs,rhs, and residual */ irhs[j]=f3tensor(1,nn,1,nn,1,nn); ires[j]=f3tensor(1,nn,1,nn,1,nn); interp(iu[j],iu[j-1],nn); /* irho contains rhs except on fine grid where it is in u */ copy(irhs[j],(j != ngrid ? irho[j] : u),nn); /* v-cycle at current grid level */ for (jcycle=1;jcycle<=ncycle;jcycle++) { /* nf is # points on finest grid for current v-sweep */ nf=nn; for (jj=j;jj>=2;jj--) { for (jpre=1;jpre<=NPRE;jpre++) /* NPRE g-s sweeps on the finest (relatively) scale */ relax(iu[jj],iu[jj-1],irhs[jj],nf); //need iu[jj-1] for jacobi resid(ires[jj],iu[jj],irhs[jj],nf); /* compute res on finest scale, store in ires */ nf=nf/2+1; /* next coarsest scale */ rstrct(irhs[jj-1],ires[jj],nf); /* restrict residuals as rhs of next coarsest scale */ fill0(iu[jj-1],nf); /* set the initial solution guess to zero */ } slvsml(iu[1],irhs[1]); /* solve the small problem exactly */ nf=3; /* fine scale now n=3 */ for (jj=2;jj<=j;jj++) { /* work way back up to current finest grid */ nf=2*nf-1; /* next finest scale */ addint(iu[jj],iu[jj-1],ires[jj],nf); /* inter error and add to previous solution guess */ for (jpost=1;jpost<=NPOST;jpost++) /* do NPOST g-s sweeps */ relax(iu[jj],iu[jj-1],irhs[jj],nf); } } } copy(u,iu[ngrid],n); /* copy solution into input array (implicitly returned) */ /*** clean up memory ***/ for (nn=n,j=ng;j>=2;j--,nn=nn/2+1) { free_f3tensor(ires[j],1,nn,1,nn,1,nn); free_f3tensor(irhs[j],1,nn,1,nn,1,nn); free_f3tensor(iu[j],1,nn,1,nn,1,nn); if (j != ng) free_f3tensor(irho[j],1,nn,1,nn,1,nn); } free_f3tensor(irhs[1],1,3,1,3,1,3); free_f3tensor(iu[1],1,3,1,3,1,3); }
int main(int argc, const char *argv[]) { myprint("","Hello world!","How are you?","How old are you?"); printf("%d\n",addint(10,1,2,3,4,5,6,7,8,9,10)); return 0; }