--- linuxsampler/trunk/src/engines/common/InstrumentScriptVMFunctions.h 2014/06/05 19:39:12 2596 +++ linuxsampler/trunk/src/engines/common/InstrumentScriptVMFunctions.h 2014/06/06 12:38:54 2598 @@ -17,7 +17,7 @@ class InstrumentScriptVM; - class InstrumentScriptVMFunction_play_note : public VMEmptyResultFunction { + class InstrumentScriptVMFunction_play_note : public VMIntResultFunction { public: InstrumentScriptVMFunction_play_note(InstrumentScriptVM* parent); int minRequiredArgs() const { return 1; } @@ -25,6 +25,30 @@ bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;} ExprType_t argType(int iArg) const { return INT_EXPR; } VMFnResult* exec(VMFnArgs* args); + protected: + InstrumentScriptVM* m_vm; + }; + + class InstrumentScriptVMFunction_ignore_event : public VMEmptyResultFunction { + public: + InstrumentScriptVMFunction_ignore_event(InstrumentScriptVM* parent); + int minRequiredArgs() const { return 1; } + int maxAllowedArgs() const { return 1; } + bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;} + ExprType_t argType(int iArg) const { return INT_EXPR; } + VMFnResult* exec(VMFnArgs* args); + protected: + InstrumentScriptVM* m_vm; + }; + + class InstrumentScriptVMFunction_ignore_controller : public VMEmptyResultFunction { + public: + InstrumentScriptVMFunction_ignore_controller(InstrumentScriptVM* parent); + int minRequiredArgs() const { return 0; } + int maxAllowedArgs() const { return 1; } + bool acceptsArgType(int iArg, ExprType_t type) const { return type == INT_EXPR;} + ExprType_t argType(int iArg) const { return INT_EXPR; } + VMFnResult* exec(VMFnArgs* args); protected: InstrumentScriptVM* m_vm; };