Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
grid_lines.hpp File Reference
#include <cstddef>
#include <cstdint>
#include <compare>
#include <span>
#include <pulp/timeline_editor/viewport_projection.hpp>
#include <pulp/timebase/compiled_meter_map.hpp>

Go to the source code of this file.

Classes

struct  pulp::timeline_editor::GridLine
 Describes one visible musical boundary in projected screen coordinates. More...
struct  pulp::timeline_editor::GridLineResult
 Carries the generation status and the number of lines written. More...

Namespaces

namespace  pulp
namespace  pulp::timeline_editor
 ScriptedUiHost is a SequencerUiHost whose playhead is written by the caller instead of an engine, and which keeps what a view emitted so a test can read it back.

Enumerations

enum class  pulp::timeline_editor::GridLineLevel : std::uint8_t { pulp::timeline_editor::Bar , pulp::timeline_editor::Beat }
 Identifies the musical boundary represented by a grid line. More...
enum class  pulp::timeline_editor::GridLineError : std::uint8_t {
  pulp::timeline_editor::None , pulp::timeline_editor::NonFiniteSpacing , pulp::timeline_editor::NonPositiveSpacing , pulp::timeline_editor::RangeOverflow ,
  pulp::timeline_editor::OutputTooSmall
}
 Reports why grid-line generation stopped. More...

Functions

GridLineResult pulp::timeline_editor::generate_grid_lines (const TickProjection &projection, const timebase::CompiledMeterMap &meter, float minimum_spacing_px, std::span< GridLine > output) noexcept
 Emits visible bar lines and beat lines that are at least minimum_spacing_px from their enclosing bar line.