|
MUSX Document Model
|
Represents a repeat-backward marker with positioning and behavior properties. More...
#include <Others.h>
Inheritance diagram for musx::dom::others::RepeatBack:Public Member Functions | |
| RepeatBack (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper cmper) | |
| Constructor function. | |
| MusxInstance< RepeatIndividualPositioning > | getIndividualPositioning (StaffCmper staffId) const |
| Returns the RepeatIndividualPositioning record for a given staff. Check individualPlacement to see if this record is used by Finale. | |
| RepeatStaffListSet | createStaffListSet () const |
| Create a StaffListSet for the given instance. This can be used to interrogate whether a staff appears in the staff set. | |
| std::optional< MeasCmper > | calcTargetMeasure () const |
| Calculates the target measure for this repeat-back jump action, if any. | |
Public Member Functions inherited from musx::dom::OthersBase | |
| OthersBase (const OthersBase &)=default | |
| explicit default copy constructor | |
| OthersBase (OthersBase &&) noexcept=default | |
| explicit default move constructor | |
| Cmper | getCmper () const |
Gets the cmper key value. | |
| std::optional< Inci > | getInci () const |
Gets the optional array index (inci). | |
| Cmper | getRequestedPartId () const |
| If this instance was retrieved from an object pool, it contains the part ID that was used to retrieve it. If this value is different than getSourcePartId, then this instance is a copy of the pool instance. | |
Public Member Functions inherited from musx::dom::Base | |
| virtual | ~Base () noexcept(false)=default |
| Virtual destructor for polymorphic behavior. | |
| DocumentPtr | getDocument () const |
| Gets a reference to the Document. | |
| Cmper | getSourcePartId () const |
| Gets the source partId for this instance. If an instance is fully shared with the score, the source is SCORE_PARTID. If an instance is partially shared or non shared, the source is the ID of the part that sourced it. | |
| 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 void | integrityCheck (const std::shared_ptr< Base > &ptrToThis) |
| 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. | |
| 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< RepeatBack > & | xmlMappingArray () |
| Required for musx::factory::FieldPopulator. | |
Public Attributes | |
| int | passNumber {} |
| int | targetValue {} |
Absolute or relative measure number, depending on jumpAction. (xml tag is <target>) | |
| Evpu | leftHPos {} |
The horizontal position of the left bracket, relative to the default. (xml tag is <pos1>) | |
| Evpu | leftVPos {} |
The vertical position of the lower left bracket, relative to the default. (xml tag is <line1>) | |
| bool | individualPlacement {} |
"Allow Individual Edits Per Staff" (xml tag is <indivPlac>) | |
| bool | topStaffOnly {} |
| "Show On: Top Staff Only" | |
| bool | hidden {} |
| Inverse of "Show" checkbox. | |
| bool | resetOnAction {} |
"Reset on Repeat Action" (xml tag is <clrOnChange>) | |
| RepeatActionType | jumpAction {} |
The jump action for this repeat ending. The automatic jump is to the next ending. (xml tag is <action>) | |
| RepeatTriggerType | trigger {} |
| The condition that triggers the jumpAction. | |
| Cmper | staffList {} |
| If non-zero, specifies a staff list for which staves to show the ending. | |
| Evpu | rightHPos {} |
The horizontal position of the upper right bracket, relative to the default. (xml tag is <pos2>) | |
| Evpu | rightVPos {} |
The vertical position of the upper right bracket, relative to the default. (xml tag is <line2>) | |
Static Public Attributes | |
| static constexpr std::string_view | XmlNodeName = "repeatBack" |
| The XML node name for this type. | |
Additional Inherited Members | |
Public Types inherited from musx::dom::Base | |
| 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. | |
Protected Member Functions inherited from musx::dom::OthersBase | |
| OthersBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper cmper, std::optional< Inci > inci=std::nullopt) | |
| Constructs an OthersBase object. | |
| OthersBase & | operator= (const OthersBase &other) |
| Assignment operator delegates to base, preserving OthersBase state. | |
| OthersBase & | operator= (OthersBase &&other) noexcept |
| Assignment operator delegates to base, preserving OthersBase state. | |
Protected Member Functions inherited from musx::dom::Base | |
| Base (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode) | |
| Constructs the base class. | |
| Base (const Base &)=default | |
| explicit default copy constructor | |
| Base (Base &&) noexcept=default | |
| explicit default move constructor | |
| Base & | operator= (const Base &) |
| no-op copy assignment operator allows subclasses to copy their values. | |
| Base & | operator= (Base &&) noexcept |
| no-op move assignment operator allows subclasses to move their values. | |
Represents a repeat-backward marker with positioning and behavior properties.
The cmper is the cmper of the Measure that has this item.
This class is identified by the XML node name "repeatBack".
| std::optional< MeasCmper > musx::dom::others::RepeatBack::calcTargetMeasure | ( | ) | const |
Calculates the target measure for this repeat-back jump action, if any.
For JumpAuto, this resolves to the nearest preceding forward repeat bar. Returns std::nullopt for actions that do not provide a concrete measure target.
| RepeatStaffListSet musx::dom::others::RepeatBack::createStaffListSet | ( | ) | const |
Create a StaffListSet for the given instance. This can be used to interrogate whether a staff appears in the staff set.
| MusxInstance< RepeatIndividualPositioning > musx::dom::others::RepeatBack::getIndividualPositioning | ( | StaffCmper | staffId | ) | const |
Returns the RepeatIndividualPositioning record for a given staff. Check individualPlacement to see if this record is used by Finale.
| staffId | The StaffCmper of the staff to search for individual positioning. |