diff options
Diffstat (limited to 'externals/grill/vst/src/VstHost.h')
-rw-r--r-- | externals/grill/vst/src/VstHost.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/externals/grill/vst/src/VstHost.h b/externals/grill/vst/src/VstHost.h index bbbebe1f..00b5164f 100644 --- a/externals/grill/vst/src/VstHost.h +++ b/externals/grill/vst/src/VstHost.h @@ -72,6 +72,13 @@ public: void GetParamValue(int numparam,char *parval) const; float GetParamValue(int numparam) const; + // scan plugin names (can take a _long_ time!!) + void ScanParams(int i = -1); + // get number of scanned parameters + int ScannedParams() const { return paramnamecnt; } + // get index of named (scanned) parameter... -1 if not found + int GetParamIx(const char *p) const; + bool SetParamFloat(int parameter, float value); bool SetParamInt(int parameter, int value) { return SetParamFloat(parameter,value/65535.0f); } @@ -143,6 +150,16 @@ protected: char _sVendorName[64]; std::string _sDllName; // Contains dll name + struct NameCmp: + std::less<std::string> + { + bool operator()(const std::string &a,const std::string &b) const { return a.compare(b) < 0; } + }; + + typedef std::map<std::string,int,NameCmp> NameMap; + int paramnamecnt; + NameMap paramnames; + /* float *inputs[MAX_INOUTS]; float *outputs[MAX_INOUTS]; |