Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
au_v2_entry.hpp File Reference
#include <pulp/format/au_v2_adapter.hpp>
#include <pulp/format/registry.hpp>
#include <AudioUnitSDK/AUPlugInDispatch.h>
#include <AudioUnitSDK/ComponentBase.h>

Go to the source code of this file.

Macros

#define PULP_AU_PLUGIN(ClassName, factory_fn)
#define PULP_AU_MIDI_PLUGIN(ClassName, factory_fn)
#define PULP_AU_BUNDLE_ENTRY_(ClassName, factory_fn, au_factory, ...)
#define PULP_AU_BUNDLE_PLUGIN(ClassName, factory_fn, ...)
#define PULP_AU_BUNDLE_MIDI_PLUGIN(ClassName, factory_fn, ...)

Macro Definition Documentation

◆ PULP_AU_BUNDLE_ENTRY_

#define PULP_AU_BUNDLE_ENTRY_ ( ClassName,
factory_fn,
au_factory,
... )
Value:
namespace { \
struct ClassName##_Registrar { \
ClassName##_Registrar() { \
reg.factory = factory_fn; \
::pulp::format::register_plugin(reg); \
} \
} ClassName##_registrar_; \
} \
class ClassName : public pulp::format::au::PulpAUEffect { \
public: \
explicit ClassName(AudioComponentInstance ci) \
: PulpAUEffect(ci, factory_fn) {} \
}; \
AUSDK_COMPONENT_ENTRY(au_factory, ClassName)
One registered plugin.
Definition registry.hpp:35
ProcessorFactory factory
Definition registry.hpp:37

◆ PULP_AU_BUNDLE_MIDI_PLUGIN

#define PULP_AU_BUNDLE_MIDI_PLUGIN ( ClassName,
factory_fn,
... )
Value:
PULP_AU_BUNDLE_ENTRY_(ClassName, factory_fn, ausdk::AUMIDIEffectFactory, __VA_ARGS__)
#define PULP_AU_BUNDLE_ENTRY_(ClassName, factory_fn, au_factory,...)
Definition au_v2_entry.hpp:88

◆ PULP_AU_BUNDLE_PLUGIN

#define PULP_AU_BUNDLE_PLUGIN ( ClassName,
factory_fn,
... )
Value:
PULP_AU_BUNDLE_ENTRY_(ClassName, factory_fn, ausdk::AUBaseFactory, __VA_ARGS__)

◆ PULP_AU_MIDI_PLUGIN

#define PULP_AU_MIDI_PLUGIN ( ClassName,
factory_fn )
Value:
PULP_REGISTER_PLUGIN(factory_fn) \
class ClassName : public pulp::format::au::PulpAUEffect { \
public: \
explicit ClassName(AudioComponentInstance ci) : PulpAUEffect(ci) {} \
}; \
AUSDK_COMPONENT_ENTRY(ausdk::AUMIDIEffectFactory, ClassName)
Definition au_v2_adapter.hpp:247
PulpAUEffect(AudioComponentInstance ci)
#define PULP_REGISTER_PLUGIN(factory_fn)
Definition registry.hpp:88

◆ PULP_AU_PLUGIN

#define PULP_AU_PLUGIN ( ClassName,
factory_fn )
Value:
PULP_REGISTER_PLUGIN(factory_fn) \
class ClassName : public pulp::format::au::PulpAUEffect { \
public: \
explicit ClassName(AudioComponentInstance ci) : PulpAUEffect(ci) {} \
}; \
AUSDK_COMPONENT_ENTRY(ausdk::AUBaseFactory, ClassName)