GuitarPrometheus::Parser::IntermediateScore
GuitarPrometheus::Parser::IntermediateScore
Parser-internal representation of the whole score immediately before [ScoreBuilder::build]() finalises it. More…
#include <IntermediateScore.h>
Public Attributes
| Name | |
|---|---|
| int | divisions Ticks per quarter-note. |
| MusicModels::TimeSignature | initialTimeSignature |
| MusicModels::KeySignature | initialKeySignature |
| std::map< SongStructure::Score::TempoChangeKey, int > | tempoChanges Sparse score-wide tempo timeline keyed by (measureNumber, tickWithinMeasure). |
| int | fallbackTempoBpm Fallback tempo when tempoChanges is empty — used to seed initialTempoBpm and currentScoreTempoBpm in that degenerate case. |
| std::vector< IntermediatePart > | parts |
Detailed Description
struct GuitarPrometheus::Parser::IntermediateScore;Parser-internal representation of the whole score immediately before [ScoreBuilder::build]() finalises it.
Carries the same data as [SongStructure::Score](/api-reference/classes/classguitarprometheus_1_1songstructure_1_1score/) minus the cached tempo scalars (which the builder derives from tempoChanges).
Concrete-format parsers populate this in their walking phase and pass it to [ScoreBuilder::build](/api-reference/classes/classguitarprometheus_1_1parser_1_1scorebuilder/#function-build).
Public Attributes Documentation
variable divisions
int divisions = 480;Ticks per quarter-note.
Always 480 — the canonical output PPQN. Format-specific parsers rescale their source ticks before populating any Engraving.
variable initialTimeSignature
MusicModels::TimeSignature initialTimeSignature {};variable initialKeySignature
MusicModels::KeySignature initialKeySignature {0, MusicModels::Ionian};variable tempoChanges
std::map< SongStructure::Score::TempoChangeKey, int > tempoChanges;Sparse score-wide tempo timeline keyed by (measureNumber, tickWithinMeasure).
Both downbeat-aligned (tick = 0) and mid-measure entries are supported.
variable fallbackTempoBpm
int fallbackTempoBpm = 120;Fallback tempo when tempoChanges is empty — used to seed initialTempoBpm and currentScoreTempoBpm in that degenerate case.
Defaults to 120.
variable parts
std::vector< IntermediatePart > parts;Updated on 2026-05-29 at 07:39:52 +0000