LMMS
Loading...
Searching...
No Matches
lmms::Lv2Ports::Audio Struct Reference

#include <Lv2Ports.h>

Inheritance diagram for lmms::Lv2Ports::Audio:
lmms::Lv2Ports::VisitablePort< Audio, PortBase > lmms::Lv2Ports::PortBase lmms::Lv2Ports::Meta

Public Member Functions

 Audio (std::size_t bufferSize, bool isSidechain)
void copyBuffersFromCore (const SampleFrame *lmmsBuf, unsigned channel, f_cnt_t frames)
void averageWithBuffersFromCore (const SampleFrame *lmmsBuf, unsigned channel, f_cnt_t frames)
void copyBuffersToCore (SampleFrame *lmmsBuf, unsigned channel, f_cnt_t frames) const
bool isSideChain () const
bool isOptional () const
bool mustBeUsed () const
std::size_t bufferSize () const
Public Member Functions inherited from lmms::Lv2Ports::VisitablePort< Audio, PortBase >
void accept (Visitor &v) override
Public Member Functions inherited from lmms::Lv2Ports::PortBase
virtual void accept (ConstVisitor &v) const =0
QString name () const
QString uri () const
virtual ~PortBase ()=default
Public Member Functions inherited from lmms::Lv2Ports::Meta
std::vector< PluginIssueget (const LilvPlugin *plugin, std::size_t portNum)
float def () const
float min (sample_rate_t sr) const
float max (sample_rate_t sr) const

Private Attributes

std::vector< float > m_buffer
 the buffer where Lv2 reads/writes the data from/to
bool m_sidechain

Friends

struct lmms::ConnectPortVisitor

Additional Inherited Members

Public Attributes inherited from lmms::Lv2Ports::PortBase
const LilvPortm_port = nullptr
const LilvPluginm_plugin = nullptr
Public Attributes inherited from lmms::Lv2Ports::Meta
Type m_type = Type::Unknown
Flow m_flow = Flow::Unknown
Vis m_vis = Vis::Generic
bool m_logarithmic = false
bool m_optional = false
bool m_used = true

Constructor & Destructor Documentation

◆ Audio()

lmms::Lv2Ports::Audio::Audio ( std::size_t bufferSize,
bool isSidechain )

Member Function Documentation

◆ averageWithBuffersFromCore()

void lmms::Lv2Ports::Audio::averageWithBuffersFromCore ( const SampleFrame * lmmsBuf,
unsigned channel,
f_cnt_t frames )

Add buffer passed by LMMS into our ports, and halve the result

Parameters
channelchannel index into each sample frame

◆ bufferSize()

std::size_t lmms::Lv2Ports::Audio::bufferSize ( ) const
inline

◆ copyBuffersFromCore()

void lmms::Lv2Ports::Audio::copyBuffersFromCore ( const SampleFrame * lmmsBuf,
unsigned channel,
f_cnt_t frames )

Copy buffer passed by LMMS into our ports

Parameters
channelchannel index into each sample frame

◆ copyBuffersToCore()

void lmms::Lv2Ports::Audio::copyBuffersToCore ( SampleFrame * lmmsBuf,
unsigned channel,
f_cnt_t frames ) const

Copy our ports into buffers passed by LMMS

Parameters
channelchannel index into each sample frame

◆ isOptional()

bool lmms::Lv2Ports::Audio::isOptional ( ) const
inline

◆ isSideChain()

bool lmms::Lv2Ports::Audio::isSideChain ( ) const
inline

◆ mustBeUsed()

bool lmms::Lv2Ports::Audio::mustBeUsed ( ) const
inline

◆ lmms::ConnectPortVisitor

friend struct lmms::ConnectPortVisitor
friend

Member Data Documentation

◆ m_buffer

std::vector<float> lmms::Lv2Ports::Audio::m_buffer
private

the buffer where Lv2 reads/writes the data from/to

◆ m_sidechain

bool lmms::Lv2Ports::Audio::m_sidechain
private

The documentation for this struct was generated from the following files: