Beispiel #1
0
ObjectPtr jamoma_new(SymbolPtr s, AtomCount argc, AtomPtr argv)
{
	int				attrstart = attr_args_offset(argc, argv);
	int				i = 0;
	int				channelCount = 2;
	SymbolPtr		className = gensym("gain");
	WrappedClassPtr	classWrapper = NULL;
	char			maxClassName[256];

	if (!attrstart) {
		error("must specify a jamoma class as the first argument");
		return NULL;
	}
	while (attrstart--) {
		if (atom_gettype(argv+i) == A_LONG)
			channelCount = atom_getlong(argv+i);
		else if (atom_gettype(argv+i) == A_SYM)
			className = atom_getsym(argv+i);
		i++;
	}
	
	snprintf(maxClassName, 256, "j.%s~", className->s_name);

	if (!s_jamoma_class_hash)
		s_jamoma_class_hash = hashtab_new(0);
	hashtab_lookup(s_jamoma_class_hash, className, (t_object**)&classWrapper);

	if (!classWrapper) {
		wrapTTClassAsMaxClass(className->s_name, maxClassName, &classWrapper);
		hashtab_store(s_jamoma_class_hash, className, ObjectPtr(classWrapper));
	}

	return wrappedClass_new(gensym(maxClassName), argc-1, argv+1);
}
Beispiel #2
0
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	// First, we have to register our custom subclass with the TTBlue framework.
	TTDSPInit();
	TTOverdriveExtended::registerClass();
	
	// Then we are able to wrap it as a Max class.
	return wrapTTClassAsMaxClass(TT(thisTTClassName), "jcom.overdrive~", NULL);
}
Beispiel #3
0
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	WrappedClassPtr	w;
	
	TTDSPInit();
	TTLoadJamomaExtension_EffectsLib();
	TTLoadJamomaExtension_FilterLib();
	
	return wrapTTClassAsMaxClass(TT("limiter"), "tap.limi~", &w);
}
Beispiel #4
0
int C74_EXPORT main(void)
{
	WrappedClassOptionsPtr	options = new WrappedClassOptions;
	TTValue					value;

	TTDSPInit();
	
	value.clear();
	value.append(TT("drive"));
	options->append(TT("additionalSignalInputSetsAttribute"), value);	
	
	return wrapTTClassAsMaxClass(TT("overdrive"), "j.overdrive~", NULL, options);
}
Beispiel #5
0
int C74_EXPORT main(void)
{	
	WrappedClassOptionsPtr	options = new WrappedClassOptions;
	WrappedClassPtr			c = NULL;	
	TTValue					v(2);
	
	TTDSPInit();
	options->append(TT("fixedNumOutputChannels"), v);
	wrapTTClassAsMaxClass(TT("panorama"), "j.panorama~", &c, options);
	CLASS_ATTR_ENUM(c->maxClass, "mode", 0, "calculate lookup");
	CLASS_ATTR_ENUM(c->maxClass, "shape", 0, "equalPower linear squareRoot");
	
	return 0;
}
Beispiel #6
0
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	WrappedClassOptionsPtr	options = new WrappedClassOptions;
	TTValue					value;

	TTDSPInit();

	value.clear();
	value.append(TT("srRatio"));
	value.append(TT("bitdepth"));

// TODO: experimental:
//	options->append(TT("additionalSignalInputSetsAttribute"), value);
	
	return wrapTTClassAsMaxClass(TT("degrade"), "jcom.degrade~", NULL, options);
}
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	WrappedClassOptionsPtr	options = new WrappedClassOptions;
	TTValue					value;
	WrappedClassPtr			c = NULL;

	TTFoundationInit();
	
	value.clear();
	value.append(0);
	options->append(TT("fixedNumChannels"), value);
	
	wrapTTClassAsMaxClass(TT("net.send"), "jcom.net.send", &c, options);
	CLASS_ATTR_ENUM(c->maxClass, "mode", 0, "tcp udp");
	return 0;
}
Beispiel #8
0
int C74_EXPORT main(void)
{
    TTDSPInit();
    return wrapTTClassAsMaxClass(TT("clipper"), "j.clip~", NULL);
}
Beispiel #9
0
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	TTDSPInit();
	return wrapTTClassAsMaxClass(TT("clipper"), "j.clip~", NULL);
}
Beispiel #10
0
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	TTDSPInit();
	return wrapTTClassAsMaxClass(TT("array"), "jcom.array~", NULL);
}
Beispiel #11
0
int C74_EXPORT main(void)
{
	TTDSPInit();
	return wrapTTClassAsMaxClass(TT("onepole"), "j.onepole~", NULL);
}
Beispiel #12
0
int TTCLASSWRAPPERMAX_EXPORT main(void)
{
	TTDSPInit();
	return wrapTTClassAsMaxClass(TT("onepole"), "jcom.onepole~", NULL);
}