MUSX Document Model
|
Represents the attributes of a Finale frame holder. More...
#include <Details.h>
Public Member Functions | |
GFrameHold (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper inst, Cmper meas) | |
Constructor function. | |
InstCmper | getStaff () const |
returns the inst (staff) number for this GFrameHold | |
MeasCmper | getMeasure () const |
returns the measure number for this GFrameHold | |
ClefIndex | calcClefIndexAt (Edu position) const |
Returns the clef index in effect for at the specified Edu position. | |
ClefIndex | calcClefIndexAt (util::Fraction position) const |
Returns the clef index in effect for at the specified util::Fraction position (as a fraction of whole notes). | |
std::shared_ptr< const EntryFrame > | createEntryFrame (LayerIndex layerIndex, bool forWrittenPitch=false) const |
Returns the EntryFrame for all entries in the given layer. | |
bool | iterateEntries (LayerIndex layerIndex, std::function< bool(const EntryInfoPtr &)> iterator) |
iterates the entries for the specified layer in this GFrameHold from left to right | |
bool | iterateEntries (std::function< bool(const EntryInfoPtr &)> iterator) |
iterates the entries for this GFrameHold from left to right for each layer in order | |
void | integrityCheck () override |
Allows a class to determine if it has been properly contructed by the factory and fix issues that it can, such as creating default instances of contained classes. | |
![]() | |
Cmper | getCmper1 () const |
Gets the cmper1 key value. | |
Cmper | getCmper2 () const |
Gets the cmper2 key value. | |
std::optional< Inci > | getInci () const |
Gets the optional array index (inci ). | |
![]() | |
virtual | ~Base () noexcept(false)=default |
Virtual destructor for polymorphic behavior. | |
DocumentPtr | getDocument () const |
Gets a reference to the Document. | |
Cmper | getPartId () const |
Gets the partId for this instance (or 0 for score) | |
std::shared_ptr< others::PartDefinition > | getPartDefinition () const |
Gets the others::PartDefinition corresponding to getPartId. | |
ShareMode | getShareMode () const |
Gets the sharing mode for this instance. | |
const SharedNodes & | getUnlinkedNodes () const |
Gets the unlinked nodes for this instance. (Only populated for ShareMode::Partial ) | |
void | addUnlinkedNode (const std::string &nodeName) |
Adds a shared node for this instance. | |
virtual bool | requireAllFields () const |
Specifies if the parser should alert (print or throw) when an unknown xml tag is found for this class. | |
Static Public Member Functions | |
static const xml::XmlElementArray< GFrameHold > & | xmlMappingArray () |
Required for musx::factory::FieldPopulator. | |
Public Attributes | |
std::optional< ClefIndex > | clefId |
clef index when there are no mid-measure clef changes. (xml tag is <clefID> ). | |
Cmper | clefListId {} |
The clef list ID when there are mid-measure clef changes, if non-zero. (xml tag is <clefListID> ). | |
ShowClefMode | showClefMode {} |
"Show Clef" mode. (xml tag is <clefMode> ) | |
bool | mirrorFrame {} |
Indicates this is a mirror frame. (Not used after Finale 14.5.) | |
int | clefPercent {} |
Clef percent where 100 means 100%. | |
std::vector< Cmper > | frames |
others::Frame values for layers 1..4 (layer indices 0..3) if non-zero | |
Static Public Attributes | |
static constexpr std::string_view | XmlNodeName = "gfhold" |
The XML node name for this type. | |
Additional Inherited Members | |
![]() | |
enum class | ShareMode { All , Partial , None } |
Describes how this instance is shared between part and score. More... | |
using | SharedNodes = std::set< std::string > |
The container type for shared nodes. | |
![]() | |
DetailsBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper cmper1, Cmper cmper2, std::optional< Inci > inci=std::nullopt) | |
Constructs a DetailsBase object. | |
![]() | |
Base (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode) | |
Constructs the base class and enforces the static constexpr XmlNodeName. | |
Base & | operator= (const Base &) |
assignment constructor: m_unlinkedNodes is intentionally omitted | |
Represents the attributes of a Finale frame holder.
Cmper1 is the staff (inst) Cmper and Cmper2 is the measur Cmper This class is identified by the XML node name "gfhold".
|
inlineexplicit |
Constructor function.
document | A weak pointer to the associated document. |
partId | The part that this is for (probably always 0). |
shareMode | The sharing mode for this GFrameHold (probably always ShareMode::All) |
inst | The staff ID for this GFrameHold. |
meas | The measure ID for this GFrameHold. |
|
inline |
Returns the clef index in effect for at the specified util::Fraction position (as a fraction of whole notes).
std::shared_ptr< const EntryFrame > musx::dom::details::GFrameHold::createEntryFrame | ( | LayerIndex | layerIndex, |
bool | forWrittenPitch = false |
||
) | const |
Returns the EntryFrame for all entries in the given layer.
layerIndex | The layer index (0..3) to iterate. |
forWrittenPitch | If true, the key and clef for each entry are calculated for written pitch rather than concert pitch. |
|
inlineoverridevirtual |
Allows a class to determine if it has been properly contructed by the factory and fix issues that it can, such as creating default instances of contained classes.
The default implementation should always be called inside an overridden implementation.
musx::dom::integrity_error | if there is a problem. |
Reimplemented from musx::dom::Base.
bool musx::dom::details::GFrameHold::iterateEntries | ( | LayerIndex | layerIndex, |
std::function< bool(const EntryInfoPtr &)> | iterator | ||
) |
iterates the entries for the specified layer in this GFrameHold from left to right
layerIndex | The layer index (0..3) to iterate. |
iterator | The callback function for each iteration. |
std::invalid_argument | if the layer index is out of range |
bool musx::dom::details::GFrameHold::iterateEntries | ( | std::function< bool(const EntryInfoPtr &)> | iterator | ) |
iterates the entries for this GFrameHold from left to right for each layer in order
iterator | The callback function for each iteration. |