denigma 4.0.0
Loading...
Searching...
No Matches
denigma::classify::smartshape::Ottava Struct Reference

An octave-displacement span, from either a built-in ottava shape or a custom line. More...

#include <smartshapes.h>

Public Member Functions

bool calcIsSemanticCarrier () const noexcept
 True when this shape carries the octave-displacement semantics.
 

Public Attributes

int octaveShift {}
 Octaves the written pitches are displaced: negative sounds below written pitch.
 
musx::dom::MusxInstance< musx::dom::others::SmartShape > hiddenCounterpart
 When this shape is a custom line whose octave semantics are carried by a hidden built-in ottava covering the same music, the counterpart.
 
bool hasVisualProxy {}
 True when this shape is a hidden built-in ottava that is rendered by a visible custom line.
 
std::optional< GeneralLineline
 Appearance, when this shape is a custom line. (Empty for built-in ottavas.)
 

Detailed Description

An octave-displacement span, from either a built-in ottava shape or a custom line.

Finale scores sometimes pair a hidden built-in ottava, which carries the octave semantics, with a visible custom line that supplies the appearance. Both shapes classify as an Ottava, and calcIsSemanticCarrier distinguishes them.

Member Function Documentation

◆ calcIsSemanticCarrier()

bool denigma::classify::smartshape::Ottava::calcIsSemanticCarrier ( ) const
inlinenoexcept

True when this shape carries the octave-displacement semantics.

Exactly the carriers participate in pitch mapping; paired visual custom lines return false.

Member Data Documentation

◆ hasVisualProxy

bool denigma::classify::smartshape::Ottava::hasVisualProxy {}

True when this shape is a hidden built-in ottava that is rendered by a visible custom line.

Consumers should process it despite the shape's hidden flag.

◆ hiddenCounterpart

musx::dom::MusxInstance<musx::dom::others::SmartShape> denigma::classify::smartshape::Ottava::hiddenCounterpart

When this shape is a custom line whose octave semantics are carried by a hidden built-in ottava covering the same music, the counterpart.

Consumers should treat this shape as appearance-only when set.


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