24 TTPtr graphOutlets[16];
28 typedef Append* AppendPtr;
32 AppendPtr AppendNew (t_symbol* msg,
long argc, t_atom* argv);
33 void AppendFree (AppendPtr
self);
34 void AppendAssist (AppendPtr
self,
void* b,
long msg,
long arg,
char* dst);
35 t_max_err AppendSetKey (AppendPtr
self,
void* attr,
long argc, t_atom* argv);
36 t_max_err AppendSetValue (AppendPtr
self,
void* attr,
long argc, t_atom* argv);
40 static t_class* sAppendClass;
51 common_symbols_init();
53 c = class_new(
"j.append-", (method)AppendNew, (method)AppendFree,
sizeof(Append), (method)0L, A_GIMME, 0);
55 class_addmethod(c, (method)MaxGraphReset,
"graph.reset", A_CANT, 0);
56 class_addmethod(c, (method)MaxGraphSetup,
"graph.setup", A_CANT, 0);
57 class_addmethod(c, (method)MaxGraphConnect,
"graph.connect", A_OBJ, A_LONG, 0);
58 class_addmethod(c, (method)MaxGraphDrop,
"graph.drop", A_CANT, 0);
59 class_addmethod(c, (method)MaxGraphObject,
"graph.object", A_CANT, 0);
61 class_addmethod(c, (method)AppendAssist,
"assist", A_CANT, 0);
62 class_addmethod(c, (method)object_obex_dumpout,
"dumpout", A_CANT, 0);
64 CLASS_ATTR_SYM(c,
"key", 0, Append, attrKey);
65 CLASS_ATTR_ACCESSORS(c,
"key", NULL, AppendSetKey);
67 CLASS_ATTR_FLOAT(c,
"value", 0, Append, attrValue);
68 CLASS_ATTR_ACCESSORS(c,
"value", NULL, AppendSetValue);
70 class_register(_sym_box, c);
79 AppendPtr AppendNew(t_symbol* msg,
long argc, t_atom* argv)
85 self = AppendPtr(object_alloc(sAppendClass));
87 object_obex_store((
void*)
self, _sym_dumpout, (t_object*)outlet_new(
self, NULL));
88 self->graphOutlets[0] = outlet_new(
self,
"graph.connect");
91 v[0] =
"dictionary.append";
95 if (!self->graphObject->mKernel.valid()) {
96 object_error(SELF,
"cannot load Jamoma object");
100 attr_args_process(
self, argc, argv);
107 void AppendFree(AppendPtr
self)
117 void AppendAssist(AppendPtr
self,
void* b,
long msg,
long arg,
char* dst)
120 strcpy (dst,
"dictionary input and control messages");
123 strcpy(dst,
"dictionary output");
125 strcpy(dst,
"dumpout");
132 t_max_err AppendSetKey(AppendPtr
self,
void* attr,
long argc, t_atom* argv)
135 self->attrKey = atom_getsym(argv);
136 self->graphObject->mKernel.set(
TT(
"key"),
TT(self->attrKey->s_name));
142 t_max_err AppendSetValue(AppendPtr
self,
void* attr,
long argc, t_atom* argv)
145 self->attrValue = atom_getsym(argv);
146 self->graphObject->mKernel.set(
TT(
"value"),
TT(self->attrValue->s_name));
The TTGraphObjectBase wraps a TTDSP object such that it is possible to build a dynamic graph of audio...
TTErr TTObjectBaseRelease(TTObjectBasePtr *anObject)
DEPRECATED.
Base class for all first-class Jamoma objects.
#define TT
This macro is defined as a shortcut for doing a lookup in the symbol table.
void * TTPtr
A generic pointer.
TTErr TTObjectBaseInstantiate(const TTSymbol className, TTObjectBasePtr *returnedObjectPtr, const TTValue arguments)
DEPRECATED.
TTErr
Jamoma Error Codes Enumeration of error codes that might be returned by any of the TTBlue functions a...
int C74_EXPORT main(void)
Set up this class as a Max external the first time an object of this kind is instantiated.
void resize(size_type n)
Change the number of elements.
[doxygenAppendixC_copyExample]