28 lines
750 B
C++
28 lines
750 B
C++
#pragma once
|
|
|
|
#include <cstddef>
|
|
#include <string_view>
|
|
#include <vector>
|
|
|
|
#include <luma.hpp>
|
|
|
|
#include <vamp_zero/types.hpp>
|
|
|
|
namespace vamp_zero {
|
|
|
|
enum class score_accidental_mark {
|
|
NONE,
|
|
FLAT,
|
|
NATURAL,
|
|
SHARP,
|
|
};
|
|
|
|
constexpr auto score_measures_per_system = std::size_t{4};
|
|
constexpr auto score_systems_per_page = std::size_t{3};
|
|
constexpr auto score_measures_per_page = score_measures_per_system * score_systems_per_page;
|
|
|
|
auto notated_accidentals_for_measure(vamp_zero::score_measure const& measure, std::string_view inherited_key_signature) -> std::vector<vamp_zero::score_accidental_mark>;
|
|
auto draw_score_page(luma::draw_context& context, luma::rect bounds, vamp_zero::score_document const& score, std::size_t page_index) -> void;
|
|
|
|
}
|