Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::playback::ProgramWireAutomationSegmentRecord Struct Reference

Deliberately not laid out like AutomationProgramSegment: this groups the three floats and puts interpolation last so the record packs to 48 bytes with one run of padding, where the program type interleaves them. More...

#include <program_wire.hpp>

Public Attributes

std::int64_t start_tick = 0
std::int64_t end_tick = 0
std::int64_t start_sample = 0
std::int64_t end_sample = 0
float start_value = 0.0f
float end_value = 0.0f
float curvature = 0.0f
std::uint8_t interpolation = 0
std::uint8_t pad [3] = {}

Detailed Description

Deliberately not laid out like AutomationProgramSegment: this groups the three floats and puts interpolation last so the record packs to 48 bytes with one run of padding, where the program type interleaves them.

The divergence is intentional, which is a second reason no wire record should ever be cast to or from its program counterpart.

Member Data Documentation

◆ curvature

float pulp::playback::ProgramWireAutomationSegmentRecord::curvature = 0.0f

◆ end_sample

std::int64_t pulp::playback::ProgramWireAutomationSegmentRecord::end_sample = 0

◆ end_tick

std::int64_t pulp::playback::ProgramWireAutomationSegmentRecord::end_tick = 0

◆ end_value

float pulp::playback::ProgramWireAutomationSegmentRecord::end_value = 0.0f

◆ interpolation

std::uint8_t pulp::playback::ProgramWireAutomationSegmentRecord::interpolation = 0

◆ pad

std::uint8_t pulp::playback::ProgramWireAutomationSegmentRecord::pad[3] = {}

◆ start_sample

std::int64_t pulp::playback::ProgramWireAutomationSegmentRecord::start_sample = 0

◆ start_tick

std::int64_t pulp::playback::ProgramWireAutomationSegmentRecord::start_tick = 0

◆ start_value

float pulp::playback::ProgramWireAutomationSegmentRecord::start_value = 0.0f

The documentation for this struct was generated from the following file:
  • /home/runner/work/pulp/pulp/core/playback/include/pulp/playback/program_wire.hpp