Add initial bits for Qt6 support
[carla.git] / source / includes / vst3sdk / pluginterfaces / vst / ivstautomationstate.h
blob8ef49730ee6ca6056983d3c330c6c25c50b62a4c
1 //------------------------------------------------------------------------
2 // Project : VST SDK
3 //
4 // Category : Interfaces
5 // Filename : pluginterfaces/vst/ivstautomationstate.h
6 // Created by : Steinberg, 02/2015
7 // Description : VST Automation State Interface
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 //-----------------------------------------------------------------------------
17 #pragma once
19 #include "pluginterfaces/vst/vsttypes.h"
21 //------------------------------------------------------------------------
22 #include "pluginterfaces/base/falignpush.h"
23 //------------------------------------------------------------------------
25 //------------------------------------------------------------------------
26 namespace Steinberg {
27 namespace Vst {
29 //------------------------------------------------------------------------
30 /** Extended plug-in interface IEditController: Vst::IAutomationState
31 \ingroup vstIPlug vst365
32 - [plug imp]
33 - [extends IEditController]
34 - [released: 3.6.5]
35 - [optional]
37 Hosts can inform the plug-in about its current automation state (Read/Write/Nothing).
39 class IAutomationState : public FUnknown
41 public:
42 //------------------------------------------------------------------------
43 enum AutomationStates
45 kNoAutomation = 0, ///< Not Read and not Write
46 kReadState = 1 << 0, ///< Read state
47 kWriteState = 1 << 1, ///< Write state
49 kReadWriteState = kReadState | kWriteState, ///< Read and Write enable
52 /** Sets the current Automation state. */
53 virtual tresult PLUGIN_API setAutomationState (int32 state) = 0;
55 //------------------------------------------------------------------------
56 static const FUID iid;
59 DECLARE_CLASS_IID (IAutomationState, 0xB4E8287F, 0x1BB346AA, 0x83A46667, 0x68937BAB)
61 //------------------------------------------------------------------------
62 } // namespace Vst
63 } // namespace Steinberg
65 //------------------------------------------------------------------------
66 #include "pluginterfaces/base/falignpop.h"
67 //------------------------------------------------------------------------