/[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 3212 by schoenebeck, Thu May 25 13:17:47 2017 UTC revision 3335 by schoenebeck, Sun Jul 30 14:33:15 2017 UTC
# Line 243  namespace LinuxSampler { Line 243  namespace LinuxSampler {
243          InstrumentScriptVM* m_vm;          InstrumentScriptVM* m_vm;
244      };      };
245    
246        class InstrumentScriptVMFunction_change_sustain : public VMChangeSynthParamFunction {
247        public:
248            InstrumentScriptVMFunction_change_sustain(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}
249            VMFnResult* exec(VMFnArgs* args);
250        };
251    
252      class InstrumentScriptVMFunction_change_amp_lfo_depth : public VMChangeSynthParamFunction {      class InstrumentScriptVMFunction_change_amp_lfo_depth : public VMChangeSynthParamFunction {
253      public:      public:
254          InstrumentScriptVMFunction_change_amp_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}          InstrumentScriptVMFunction_change_amp_lfo_depth(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}
# Line 279  namespace LinuxSampler { Line 285  namespace LinuxSampler {
285          VMFnResult* exec(VMFnArgs* args);          VMFnResult* exec(VMFnArgs* args);
286      };      };
287    
288        class InstrumentScriptVMFunction_change_pan_time : public VMChangeSynthParamFunction {
289        public:
290            InstrumentScriptVMFunction_change_pan_time(InstrumentScriptVM* parent) : VMChangeSynthParamFunction(parent) {}
291            VMFnResult* exec(VMFnArgs* args);
292        };
293    
294        class VMChangeFadeCurveFunction : public VMEmptyResultFunction {
295        public:
296            VMChangeFadeCurveFunction(InstrumentScriptVM* parent) : m_vm(parent) {}
297            int minRequiredArgs() const { return 2; }
298            int maxAllowedArgs() const { return 2; }
299            bool acceptsArgType(int iArg, ExprType_t type) const;
300            ExprType_t argType(int iArg) const { return INT_EXPR; }
301    
302            template<fade_curve_t NoteBase::_Override::*T_noteParam, int T_synthParam>
303            VMFnResult* execTemplate(VMFnArgs* args, const char* functionName);
304        protected:
305            InstrumentScriptVM* m_vm;
306        };
307    
308        class InstrumentScriptVMFunction_change_vol_curve : public VMChangeFadeCurveFunction {
309        public:
310            InstrumentScriptVMFunction_change_vol_curve(InstrumentScriptVM* parent) : VMChangeFadeCurveFunction(parent) {}
311            VMFnResult* exec(VMFnArgs* args);
312        };
313    
314        class InstrumentScriptVMFunction_change_tune_curve : public VMChangeFadeCurveFunction {
315        public:
316            InstrumentScriptVMFunction_change_tune_curve(InstrumentScriptVM* parent) : VMChangeFadeCurveFunction(parent) {}
317            VMFnResult* exec(VMFnArgs* args);
318        };
319    
320        class InstrumentScriptVMFunction_change_pan_curve : public VMChangeFadeCurveFunction {
321        public:
322            InstrumentScriptVMFunction_change_pan_curve(InstrumentScriptVM* parent) : VMChangeFadeCurveFunction(parent) {}
323            VMFnResult* exec(VMFnArgs* args);
324        };
325    
326      class InstrumentScriptVMFunction_fade_in : public VMEmptyResultFunction {      class InstrumentScriptVMFunction_fade_in : public VMEmptyResultFunction {
327      public:      public:
328          InstrumentScriptVMFunction_fade_in(InstrumentScriptVM* parent);          InstrumentScriptVMFunction_fade_in(InstrumentScriptVM* parent);
# Line 327  namespace LinuxSampler { Line 371  namespace LinuxSampler {
371          InstrumentScriptVM* m_vm;          InstrumentScriptVM* m_vm;
372      };      };
373    
374        class InstrumentScriptVMFunction_change_note : public VMEmptyResultFunction {
375        public:
376            InstrumentScriptVMFunction_change_note(InstrumentScriptVM* parent);
377            int minRequiredArgs() const { return 2; }
378            int maxAllowedArgs() const { return 2; }
379            bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;}
380            ExprType_t argType(int iArg) const { return INT_EXPR; }
381            VMFnResult* exec(VMFnArgs* args);
382        protected:
383            InstrumentScriptVM* m_vm;
384        };
385    
386        class InstrumentScriptVMFunction_change_velo : public VMEmptyResultFunction {
387        public:
388            InstrumentScriptVMFunction_change_velo(InstrumentScriptVM* parent);
389            int minRequiredArgs() const { return 2; }
390            int maxAllowedArgs() const { return 2; }
391            bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;}
392            ExprType_t argType(int iArg) const { return INT_EXPR; }
393            VMFnResult* exec(VMFnArgs* args);
394        protected:
395            InstrumentScriptVM* m_vm;
396        };
397    
398        class InstrumentScriptVMFunction_change_play_pos : public VMEmptyResultFunction {
399        public:
400            InstrumentScriptVMFunction_change_play_pos(InstrumentScriptVM* parent);
401            int minRequiredArgs() const { return 2; }
402            int maxAllowedArgs() const { return 2; }
403            bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR; }
404            ExprType_t argType(int iArg) const { return INT_EXPR; }
405            VMFnResult* exec(VMFnArgs* args);
406        protected:
407            InstrumentScriptVM* m_vm;
408        };
409    
410      class InstrumentScriptVMFunction_event_status : public VMIntResultFunction {      class InstrumentScriptVMFunction_event_status : public VMIntResultFunction {
411      public:      public:
412          InstrumentScriptVMFunction_event_status(InstrumentScriptVM* parent);          InstrumentScriptVMFunction_event_status(InstrumentScriptVM* parent);
# Line 339  namespace LinuxSampler { Line 419  namespace LinuxSampler {
419          InstrumentScriptVM* m_vm;          InstrumentScriptVM* m_vm;
420      };      };
421    
422        class InstrumentScriptVMFunction_callback_status : public VMIntResultFunction {
423        public:
424            InstrumentScriptVMFunction_callback_status(InstrumentScriptVM* parent);
425            int minRequiredArgs() const { return 1; }
426            int maxAllowedArgs() const { return 1; }
427            bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;}
428            ExprType_t argType(int iArg) const { return INT_EXPR; }
429            VMFnResult* exec(VMFnArgs* args);
430        protected:
431            InstrumentScriptVM* m_vm;
432        };
433    
434      // overrides core wait() implementation      // overrides core wait() implementation
435      class InstrumentScriptVMFunction_wait : public CoreVMFunction_wait {      class InstrumentScriptVMFunction_wait : public CoreVMFunction_wait {
436      public:      public:
# Line 353  namespace LinuxSampler { Line 445  namespace LinuxSampler {
445          int maxAllowedArgs() const { return 2; }          int maxAllowedArgs() const { return 2; }
446          bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;}          bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;}
447          ExprType_t argType(int iArg) const { return INT_EXPR; }          ExprType_t argType(int iArg) const { return INT_EXPR; }
448            VMFnResult* exec(VMFnArgs* args);
449        protected:
450            InstrumentScriptVM* m_vm;
451        };
452    
453        class InstrumentScriptVMFunction_abort : public VMEmptyResultFunction {
454        public:
455            InstrumentScriptVMFunction_abort(InstrumentScriptVM* parent);
456            int minRequiredArgs() const { return 1; }
457            int maxAllowedArgs() const { return 1; }
458            bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR; }
459            ExprType_t argType(int iArg) const { return INT_EXPR; }
460            VMFnResult* exec(VMFnArgs* args) OVERRIDE;
461        protected:
462            InstrumentScriptVM* m_vm;
463        };
464    
465        class InstrumentScriptVMFunction_fork : public VMIntResultFunction {
466        public:
467            InstrumentScriptVMFunction_fork(InstrumentScriptVM* parent);
468            int minRequiredArgs() const { return 0; }
469            int maxAllowedArgs() const { return 2; }
470            bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;}
471            ExprType_t argType(int iArg) const { return INT_EXPR; }
472          VMFnResult* exec(VMFnArgs* args);          VMFnResult* exec(VMFnArgs* args);
473      protected:      protected:
474          InstrumentScriptVM* m_vm;          InstrumentScriptVM* m_vm;

Legend:
Removed from v.3212  
changed lines
  Added in v.3335

  ViewVC Help
Powered by ViewVC