Anklang-0.3.0-1416-gfa8ce8d2 anklang-0.3.0-1416-gfa8ce8d2
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
plugin.hh
Go to the documentation of this file.
1 // This Source Code Form is licensed MPL-2.0: http://mozilla.org/MPL/2.0
2#pragma once
3
4#include <ase/trkn-utils.hh>
5#include <ase/device.hh>
6
7namespace Ase {
8
10class PluginImpl : public DeviceImpl, public virtual Plugin {
14 friend class TrackImpl;
15 friend class PluginStateListener;
16protected:
18 std::string plugin_type_;
19 virtual ~PluginImpl ();
20public:
21 explicit PluginImpl (tracktion::Plugin &plugin);
22 String name () const override;
23 void name (const std::string&) override;
24 DeviceInfo device_info () override;
25 String plugin_type () const override;
26 bool enabled () const override;
27 void enabled (bool enabled) override;
28 bool frozen () const override;
29 void frozen (bool frozen) override;
30 void remove_self () override;
31 StringS read_only_properties () const override;
32 tracktion::Plugin* plugin () const noexcept { return plugin_.get(); }
33 static PluginImplP from_trkn (tracktion::Plugin&);
34};
35
36} // Ase
37
Ase::Plugin implementation wrapping tracktion::Plugin.
Definition plugin.hh:10
tracktion::Plugin * plugin() const noexcept
Access underlying tracktion::Plugin (for internal use).
Definition plugin.hh:32
bool enabled() const override
Check if plugin is enabled.
Definition plugin.cc:105
StringS read_only_properties() const override
List x()/x (v) properties that this object can't change, their setters ignore the value or warn.
Definition plugin.cc:147
String plugin_type() const override
Plugin type identifier.
Definition plugin.cc:99
void remove_self() override
Remove self from parent container.
Definition plugin.cc:153
bool frozen() const override
Check if plugin is frozen.
Definition plugin.cc:120
DeviceInfo device_info() override
Describe this Device type.
Definition plugin.cc:135
Plugin wrapper for tracktion_engine plugins on tracks.
Definition api.hh:219
Mimick tracktion::engine::SafeSelectable<> for tracktion::Selectable descendants.
Definition trkn-utils.hh:35
Ase::Track implementation.
Definition track.hh:10
#define ASE_DEFINE_MAKE_SHARED(CLASS)
Define a member function static shared_ptr<CLASS> make_shared(ctorargs...);.
Definition cxxaux.hh:274
The Anklang C++ API namespace.
Definition api.hh:8
Info for device types.
Definition api.hh:202