Jamba C++ API  4.0.0
GUIParamCx.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2018 pongasoft
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License"); you may not
5  * use this file except in compliance with the License. You may obtain a copy of
6  * the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13  * License for the specific language governing permissions and limitations under
14  * the License.
15  *
16  * @author Yan Pujante
17  */
18 #pragma once
19 
20 #include <base/source/fobject.h>
21 #include <pluginterfaces/vst/vsttypes.h>
24 
25 namespace pongasoft {
26 namespace VST {
27 namespace GUI {
28 namespace Params {
29 
30 using namespace Steinberg::Vst;
31 using namespace Steinberg;
32 
37 class GUIParamCx : public FObjectCx
38 {
39 public:
40  // Constructor with listener
41  GUIParamCx(ParamID iParamID, FObject *iParameter, Parameters::IChangeListener *iChangeListener);
42 
46  void close() override;
47 
48  // onTargetChange
49  void onTargetChange() override;
50 
51  // disabling copy
52  GUIParamCx(GUIParamCx const &) = delete;
53  GUIParamCx& operator=(GUIParamCx const &) = delete;
54 
55 protected:
56  ParamID fParamID;
58 };
59 
60 }
61 }
62 }
63 }
64 
65 
ParamID fParamID
Definition: GUIParamCx.h:56
Definition: Clock.h:22
Wrapper class which maintains a connection between the target and this object.
Definition: FObjectCx.h:35
Wrapper class which maintains the connection between a parameter and its listener.
Definition: GUIParamCx.h:37
Parameters::IChangeListener * fChangeListener
Definition: GUIParamCx.h:57
Interface to implement to receive parameter changes.
Definition: Parameters.h:43