Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
plugin_descriptor.hpp File Reference
#include <cstdint>
#include <pulp/format/bus_role.hpp>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

struct  pulp::format::ViewSize
 Editor size hints (in logical pixels). More...
struct  pulp::format::BusInfo
 Audio bus description — for multi-bus plugins (sidechain, aux, etc.). More...
struct  pulp::format::BusLayoutConfiguration
 One complete host-selectable channel configuration. More...
struct  pulp::format::NodeCapabilities
 Capability sidecar for the node ABI. More...
struct  pulp::format::PluginDescriptor
 Plugin metadata — declared once, immutable. More...

Namespaces

namespace  pulp
namespace  pulp::format
 What the product grants a device: the quota table indexed by capability tier and live thermal state.

Enumerations

enum class  pulp::format::ViewportPolicy : uint8_t { pulp::format::Automatic , pulp::format::FixedDesign , pulp::format::Responsive }
 Controls whether a host paints an editor through a fixed authored coordinate space or lets the root lay itself out at the live host size. More...
enum class  pulp::format::PluginCategory { pulp::format::Effect , pulp::format::Instrument , pulp::format::MidiEffect }
 Plugin category — determines bus layout expectations and DAW behavior. More...

Functions

constexpr uint32_t pulp::format::design_viewport_width (const ViewSize &hints)
constexpr uint32_t pulp::format::design_viewport_height (const ViewSize &hints)
constexpr ViewSize pulp::format::view_size_from_design (uint32_t preferred_width, uint32_t preferred_height, uint32_t min_width=0, uint32_t min_height=0, uint32_t max_width=0, uint32_t max_height=0)
 Build a ViewSize from a design-import preferred size with sensible derived bounds.
constexpr bool pulp::format::should_pin_design_viewport (const ViewSize &hints)
 Editor-host resize contract shared by the format adapters (VST3 PulpPlugView, the AU v2 Cocoa view; mac AUv3 pins unconditionally and predates the free-resize case).
constexpr bool pulp::format::should_lock_view_aspect (const ViewSize &hints)
 Aspect locking and viewport pinning are deliberately separate.
constexpr double pulp::format::native_view_aspect_ratio (const ViewSize &hints)
 Resolve the native host constraint while preserving the legacy fixed-editor contract.
template<typename NativeHost>
void pulp::format::configure_native_viewport (NativeHost &host, const ViewSize &hints)
 Apply the declared viewport policy to a newly-created native host.
template<typename NativeHost>
void pulp::format::commit_editor_requested_viewport (NativeHost &host, const ViewSize &hints, uint32_t width, uint32_t height)
 Commit viewport state after an editor-initiated host resize succeeds.