Audio plugin host https://kx.studio/carla
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
2.6KB

  1. //------------------------------------------------------------------------
  2. // Project : VST SDK
  3. //
  4. // Category : Interfaces
  5. // Filename : pluginterfaces/vst/ivstplugview.h
  6. // Created by : Steinberg, 01/2009
  7. // Description : Plug-in User Interface Extension
  8. //
  9. //-----------------------------------------------------------------------------
  10. // This file is part of a Steinberg SDK. It is subject to the license terms
  11. // in the LICENSE file found in the top-level directory of this distribution
  12. // and at www.steinberg.net/sdklicenses.
  13. // No part of the SDK, including this file, may be copied, modified, propagated,
  14. // or distributed except according to the terms contained in the LICENSE file.
  15. //-----------------------------------------------------------------------------
  16. #pragma once
  17. #include "pluginterfaces/base/funknown.h"
  18. #include "pluginterfaces/vst/vsttypes.h"
  19. //------------------------------------------------------------------------
  20. #include "pluginterfaces/base/falignpush.h"
  21. //------------------------------------------------------------------------
  22. //------------------------------------------------------------------------
  23. namespace Steinberg {
  24. namespace Vst {
  25. //------------------------------------------------------------------------
  26. // IParameterFinder Interface
  27. //------------------------------------------------------------------------
  28. /** Extension for IPlugView to find view parameters (lookup value under mouse support): Vst::IParameterFinder
  29. \ingroup pluginGUI vst302
  30. - [plug imp]
  31. - [extends IPlugView]
  32. - [released: 3.0.2]
  33. - [optional]
  34. It is highly recommended to implement this interface.
  35. A host can implement important functionality when a plug-in supports this interface.
  36. For example, all Steinberg hosts require this interface in order to support the "AI Knob".
  37. */
  38. class IParameterFinder: public FUnknown
  39. {
  40. public:
  41. //------------------------------------------------------------------------
  42. /** Find out which parameter in plug-in view is at given position (relative to plug-in view). */
  43. virtual tresult PLUGIN_API findParameter (int32 xPos, int32 yPos, ParamID& resultTag /*out*/) = 0;
  44. //------------------------------------------------------------------------
  45. static const FUID iid;
  46. };
  47. DECLARE_CLASS_IID (IParameterFinder, 0x0F618302, 0x215D4587, 0xA512073C, 0x77B9D383)
  48. //------------------------------------------------------------------------
  49. } // namespace Vst
  50. } // namespace Steinberg
  51. //------------------------------------------------------------------------
  52. #include "pluginterfaces/base/falignpop.h"
  53. //------------------------------------------------------------------------