/[svn]/linuxsampler/trunk/src/engines/common/InstrumentScriptVMFunctions.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/common/InstrumentScriptVMFunctions.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3557 by schoenebeck, Sun Aug 18 00:06:04 2019 UTC revision 3577 by schoenebeck, Wed Aug 28 15:23:23 2019 UTC
# Line 111  namespace LinuxSampler { Line 111  namespace LinuxSampler {
111          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE { return type == INT_EXPR;}          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE { return type == INT_EXPR;}
112          bool modifiesArg(vmint iArg) const OVERRIDE { return false; }          bool modifiesArg(vmint iArg) const OVERRIDE { return false; }
113          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
114          ExprType_t returnType() OVERRIDE { return INT_ARR_EXPR; }          ExprType_t returnType(VMFnArgs* args) OVERRIDE { return INT_ARR_EXPR; }
115          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
116      protected:      protected:
117          InstrumentScriptVM* m_vm;          InstrumentScriptVM* m_vm;
# Line 138  namespace LinuxSampler { Line 138  namespace LinuxSampler {
138          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
139          vmint maxAllowedArgs() const OVERRIDE { return 3; }          vmint maxAllowedArgs() const OVERRIDE { return 3; }
140          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
141            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
142            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
143            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
144          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
145          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
146      protected:      protected:
# Line 150  namespace LinuxSampler { Line 153  namespace LinuxSampler {
153          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
154          vmint maxAllowedArgs() const OVERRIDE { return 3; }          vmint maxAllowedArgs() const OVERRIDE { return 3; }
155          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
156            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
157            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
158          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
159          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
160      protected:      protected:
# Line 162  namespace LinuxSampler { Line 167  namespace LinuxSampler {
167          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
168          vmint maxAllowedArgs() const OVERRIDE { return 3; }          vmint maxAllowedArgs() const OVERRIDE { return 3; }
169          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
170            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
171          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
172          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
173      protected:      protected:
# Line 174  namespace LinuxSampler { Line 180  namespace LinuxSampler {
180          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
181          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
182          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
183            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
184            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
185            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
186          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
187          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
188      protected:      protected:
# Line 186  namespace LinuxSampler { Line 195  namespace LinuxSampler {
195          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
196          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
197          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
198            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
199          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
200          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
201      protected:      protected:
# Line 198  namespace LinuxSampler { Line 208  namespace LinuxSampler {
208          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
209          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
210          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
211            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
212            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
213            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
214          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
215          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
216      protected:      protected:
# Line 210  namespace LinuxSampler { Line 223  namespace LinuxSampler {
223          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
224          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
225          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
226            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
227            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
228            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
229          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
230          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
231      protected:      protected:
# Line 222  namespace LinuxSampler { Line 238  namespace LinuxSampler {
238          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
239          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
240          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
241            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
242            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
243            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
244          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
245          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
246      protected:      protected:
# Line 230  namespace LinuxSampler { Line 249  namespace LinuxSampler {
249    
250      class VMChangeSynthParamFunction : public VMEmptyResultFunction {      class VMChangeSynthParamFunction : public VMEmptyResultFunction {
251      public:      public:
252          VMChangeSynthParamFunction(InstrumentScriptVM* parent) : m_vm(parent) {}          VMChangeSynthParamFunction(InstrumentScriptVM* parent, bool acceptFinal, StdUnit_t unit, bool acceptUnitPrefix)
253                : m_vm(parent), m_acceptFinal(acceptFinal), m_acceptUnitPrefix(acceptUnitPrefix), m_unit(unit) {}
254          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
255          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
256          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
257            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
258            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
259            bool acceptsArgFinal(vmint iArg) const OVERRIDE;
260          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
261    
262          template<float NoteBase::_Override::*T_noteParam, vmint T_synthParam,          template<class T_NoteParamType, T_NoteParamType NoteBase::_Override::*T_noteParam,
263                   bool T_isNormalizedParam, vmint T_maxValue, vmint T_minValue>                  vmint T_synthParam,
264                    vmint T_minValueNorm, vmint T_maxValueNorm, bool T_normalizeNorm,
265                    vmint T_minValueUnit, vmint T_maxValueUnit,
266                    MetricPrefix_t T_unitPrefix0, MetricPrefix_t ... T_unitPrefixN>
267          VMFnResult* execTemplate(VMFnArgs* args, const char* functionName);          VMFnResult* execTemplate(VMFnArgs* args, const char* functionName);
268      protected:      protected:
269          InstrumentScriptVM* m_vm;          InstrumentScriptVM* m_vm;
270            const bool m_acceptFinal;
271            const bool m_acceptUnitPrefix;
272            const StdUnit_t m_unit;
273      };      };
274    
275      class InstrumentScriptVMFunction_change_sustain : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_sustain : public VMChangeSynthParamFunction {
276      public:      public:
277          InstrumentScriptVMFunction_change_sustain(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_sustain(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_BEL,true) {}
278          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
279      };      };
280    
281      class InstrumentScriptVMFunction_change_cutoff_attack : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_cutoff_attack : public VMChangeSynthParamFunction {
282      public:      public:
283          InstrumentScriptVMFunction_change_cutoff_attack(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_cutoff_attack(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_SECOND,true) {}
284          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
285      };      };
286    
287      class InstrumentScriptVMFunction_change_cutoff_decay : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_cutoff_decay : public VMChangeSynthParamFunction {
288      public:      public:
289          InstrumentScriptVMFunction_change_cutoff_decay(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_cutoff_decay(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_SECOND,true) {}
290          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
291      };      };
292    
293      class InstrumentScriptVMFunction_change_cutoff_sustain : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_cutoff_sustain : public VMChangeSynthParamFunction {
294      public:      public:
295          InstrumentScriptVMFunction_change_cutoff_sustain(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_cutoff_sustain(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_BEL,true) {}
296          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
297      };      };
298    
299      class InstrumentScriptVMFunction_change_cutoff_release : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_cutoff_release : public VMChangeSynthParamFunction {
300      public:      public:
301          InstrumentScriptVMFunction_change_cutoff_release(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_cutoff_release(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_SECOND,true) {}
302          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
303      };      };
304    
305      class InstrumentScriptVMFunction_change_amp_lfo_depth : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_amp_lfo_depth : public VMChangeSynthParamFunction {
306      public:      public:
307          InstrumentScriptVMFunction_change_amp_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_amp_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_NO_UNIT,false) {}
308          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
309      };      };
310    
311      class InstrumentScriptVMFunction_change_amp_lfo_freq : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_amp_lfo_freq : public VMChangeSynthParamFunction {
312      public:      public:
313          InstrumentScriptVMFunction_change_amp_lfo_freq(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_amp_lfo_freq(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_HERTZ,true) {}
314          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
315      };      };
316    
317      class InstrumentScriptVMFunction_change_cutoff_lfo_depth : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_cutoff_lfo_depth : public VMChangeSynthParamFunction {
318      public:      public:
319          InstrumentScriptVMFunction_change_cutoff_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_cutoff_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_NO_UNIT,false) {}
320          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
321      };      };
322    
323      class InstrumentScriptVMFunction_change_cutoff_lfo_freq : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_cutoff_lfo_freq : public VMChangeSynthParamFunction {
324      public:      public:
325          InstrumentScriptVMFunction_change_cutoff_lfo_freq(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_cutoff_lfo_freq(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_HERTZ,true) {}
326          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
327      };      };
328    
329      class InstrumentScriptVMFunction_change_pitch_lfo_depth : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_pitch_lfo_depth : public VMChangeSynthParamFunction {
330      public:      public:
331          InstrumentScriptVMFunction_change_pitch_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_pitch_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_NO_UNIT,false) {}
332          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
333      };      };
334    
335      class InstrumentScriptVMFunction_change_pitch_lfo_freq : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_pitch_lfo_freq : public VMChangeSynthParamFunction {
336      public:      public:
337          InstrumentScriptVMFunction_change_pitch_lfo_freq(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_pitch_lfo_freq(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,true,VM_HERTZ,true) {}
338          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
339      };      };
340    
341      class InstrumentScriptVMFunction_change_vol_time : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_vol_time : public VMChangeSynthParamFunction {
342      public:      public:
343          InstrumentScriptVMFunction_change_vol_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_vol_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,false,VM_SECOND,true) {}
344          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
345      };      };
346    
347      class InstrumentScriptVMFunction_change_tune_time : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_tune_time : public VMChangeSynthParamFunction {
348      public:      public:
349          InstrumentScriptVMFunction_change_tune_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_tune_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,false,VM_SECOND,true) {}
350          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
351      };      };
352    
353      class InstrumentScriptVMFunction_change_pan_time : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_pan_time : public VMChangeSynthParamFunction {
354      public:      public:
355          InstrumentScriptVMFunction_change_pan_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_pan_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent,false,VM_SECOND,true) {}
356          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
357      };      };
358    
# Line 365  namespace LinuxSampler { Line 394  namespace LinuxSampler {
394          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
395          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
396          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
397            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
398            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
399          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
400          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
401      protected:      protected:
# Line 377  namespace LinuxSampler { Line 408  namespace LinuxSampler {
408          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
409          vmint maxAllowedArgs() const OVERRIDE { return 3; }          vmint maxAllowedArgs() const OVERRIDE { return 3; }
410          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE;
411            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
412            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
413          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
414          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
415      protected:      protected:
# Line 437  namespace LinuxSampler { Line 470  namespace LinuxSampler {
470          vmint minRequiredArgs() const OVERRIDE { return 2; }          vmint minRequiredArgs() const OVERRIDE { return 2; }
471          vmint maxAllowedArgs() const OVERRIDE { return 2; }          vmint maxAllowedArgs() const OVERRIDE { return 2; }
472          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE { return type == INT_EXPR; }          bool acceptsArgType(vmint iArg, ExprType_t type) const OVERRIDE { return type == INT_EXPR; }
473            bool acceptsArgUnitType(vmint iArg, StdUnit_t type) const OVERRIDE;
474            bool acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const OVERRIDE;
475          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }          ExprType_t argType(vmint iArg) const OVERRIDE { return INT_EXPR; }
476          VMFnResult* exec(VMFnArgs* args) OVERRIDE;          VMFnResult* exec(VMFnArgs* args) OVERRIDE;
477      protected:      protected:

Legend:
Removed from v.3557  
changed lines
  Added in v.3577

  ViewVC Help
Powered by ViewVC