30 TTBoolean dataInput, dataOutput, audioInput, audioOutput;
34 EXTRA->modelInfo->get(kTTSym_address, v);
43 if (dataInput || dataOutput) {
48 makeInternals_data(x, modelAdrs,
TTSymbol(
"data/active"), gensym(
"return_data_active"), x->
patcherPtr, kTTSym_parameter, aData);
49 aData.
set(kTTSym_type, kTTSym_boolean);
50 aData.
set(kTTSym_tags, kTTSym_generic);
51 aData.
set(kTTSym_description,
TTSymbol(
"this parameter turns on model's data processing"));
52 aData.
set(kTTSym_valueDefault, YES);
57 makeInternals_sender(
self, modelAdrs,
TTSymbol(
"data/*.*:mute"), aSender);
60 if (dataInput && dataOutput) {
65 makeInternals_data(x, modelAdrs,
TTSymbol(
"data/bypass"), gensym(
"return_data_bypass"), x->
patcherPtr, kTTSym_parameter, aData);
66 aData.
set(kTTSym_type, kTTSym_boolean);
67 aData.
set(kTTSym_tags, kTTSym_generic);
68 aData.
set(kTTSym_description,
TTSymbol(
"When active, this parameter bypasses the model's data processing algorithm, letting incoming signal pass through unaffected"));
69 aData.
set(kTTSym_valueDefault, NO);
74 makeInternals_sender(
self, modelAdrs,
TTSymbol(
"data/in.*:bypass"), aSender);
81 if (audioInput || audioOutput) {
86 makeInternals_data(x, modelAdrs,
TTSymbol(
"audio/mute"), gensym(
"return_audio_mute"), x->
patcherPtr, kTTSym_parameter, aData);
87 aData.
set(kTTSym_type, kTTSym_boolean);
88 aData.
set(kTTSym_tags, kTTSym_generic);
89 aData.
set(kTTSym_description,
TTSymbol(
"When active, this parameter turns off model's audio processing"));
90 aData.
set(kTTSym_valueDefault, NO);
95 makeInternals_sender(
self, modelAdrs,
TTSymbol(
"audio/*.*:mute"), aSender);
98 if (audioInput && audioOutput) {
103 makeInternals_data(x, modelAdrs,
TTSymbol(
"audio/bypass"), gensym(
"return_audio_bypass"), x->
patcherPtr, kTTSym_parameter, aData);
104 aData.
set(kTTSym_type, kTTSym_boolean);
105 aData.
set(kTTSym_tags, kTTSym_generic);
106 aData.
set(kTTSym_description,
TTSymbol(
"When active, this parameter bypasses the model's audio processing algorithm, letting incoming signal pass through unaffected"));
107 aData.
set(kTTSym_valueDefault, NO);
112 makeInternals_sender(
self, modelAdrs,
TTSymbol(
"audio/in.*:bypass"), aSender);
117 makeInternals_data(x, modelAdrs,
TTSymbol(
"audio/mix"), gensym(
"return_audio_mix"), x->
patcherPtr, kTTSym_parameter, aData);
118 aData.
set(kTTSym_type, kTTSym_decimal);
119 aData.
set(kTTSym_tags, kTTSym_generic);
121 aData.
set(kTTSym_rangeBounds, v);
122 aData.
set(kTTSym_rangeClipmode, kTTSym_both);
124 aData.
set(kTTSym_valueDefault, v);
126 aData.
set(kTTSym_rampFunction,
TTSymbol(
"linear"));
127 aData.
set(kTTSym_description,
TTSymbol(
"Controls the wet/dry mix in percent"));
132 makeInternals_sender(
self, modelAdrs,
TTSymbol(
"audio/out.*:mix"), aSender);
140 makeInternals_data(x, modelAdrs,
TTSymbol(
"audio/gain"), gensym(
"return_audio_gain"), x->
patcherPtr, kTTSym_parameter, aData);
141 aData.
set(kTTSym_type, kTTSym_decimal);
142 aData.
set(kTTSym_tags, kTTSym_generic);
144 aData.
set(kTTSym_rangeBounds, v);
145 aData.
set(kTTSym_rangeClipmode, kTTSym_both);
147 aData.
set(kTTSym_valueDefault, v);
149 aData.
set(kTTSym_rampFunction,
TTSymbol(
"linear"));
150 aData.
set(kTTSym_description,
TTSymbol(
"Set gain of model's outputs (as MIDI value by default)."));
155 makeInternals_sender(
self, modelAdrs,
TTSymbol(
"audio/out.*:gain"), aSender);
172 aSender.
send(kTTSym_Send, v, out);
188 aSender.
send(kTTSym_Send, v, out);
204 aSender.
send(kTTSym_Send, v, out);
220 aSender.
send(kTTSym_Send, v, out);
236 aSender.
send(kTTSym_Send, v, out);
252 aSender.
send(kTTSym_Send, v, out);
bool TTBoolean
Boolean flag, same as Boolean on the Mac.
TTErr send(const TTSymbol aName)
Send a message to this object with no arguments.
j.model / j.view - The main control center of Jamoma model and view patcher
TTErr lookup(const TTSymbol key, TTValue &value)
Find the value for the given key.
void model_signal_return_audio_mix(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
void model_signal_return_data_bypass(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
The TTAddress class is used to represent a string and efficiently pass and compare that string...
Create and use Jamoma object instances.
void model_signal_return_audio_gain(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
t_object * patcherPtr
the patcher in which the external is (ignoring subpatcher)
TTHashPtr internals
An hash table to store any internal TTObjectBases (like TTData, TTViewer, ...)
void * TTPtr
A generic pointer.
void model_signal_amenities(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
TTErr set(const TTSymbol aName, T aValue)
Set an attribute value for an object.
The TTSymbol class is used to represent a string and efficiently pass and compare that string...
void model_signal_return_data_active(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
TTBoolean iterateInternals
The flag is true when an iteration is done on the internals.
TTBoolean model_test_amenities(TTPtr self, TTSymbol name)
Data Structure for this object.
void model_signal_return_audio_mute(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
WrappedModularInstance * WrappedModularInstancePtr
Pointer to a wrapped instance of our object.
[doxygenAppendixC_copyExample]
void model_signal_return_audio_bypass(TTPtr self, t_symbol *msg, long argc, t_atom *argv)