--- linuxsampler/trunk/src/engines/common/InstrumentScriptVMFunctions.h 2017/05/19 18:09:37 3192 +++ linuxsampler/trunk/src/engines/common/InstrumentScriptVMFunctions.h 2017/05/20 12:28:57 3193 @@ -237,8 +237,7 @@ ExprType_t argType(int iArg) const { return INT_EXPR; } template + bool T_isNormalizedParam, int T_maxValue, int T_minValue> VMFnResult* execTemplate(VMFnArgs* args, const char* functionName); protected: InstrumentScriptVM* m_vm; @@ -301,6 +300,30 @@ ExprType_t argType(int iArg) const { return INT_EXPR; } VMFnResult* exec(VMFnArgs* args); protected: + InstrumentScriptVM* m_vm; + }; + + class InstrumentScriptVMFunction_get_event_par : public VMIntResultFunction { + public: + InstrumentScriptVMFunction_get_event_par(InstrumentScriptVM* parent); + int minRequiredArgs() const { return 2; } + int maxAllowedArgs() const { return 2; } + 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_set_event_par : public VMEmptyResultFunction { + public: + InstrumentScriptVMFunction_set_event_par(InstrumentScriptVM* parent); + int minRequiredArgs() const { return 3; } + int maxAllowedArgs() const { return 3; } + 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; };