|
MUSX Document Model
|
Represents graphical and notational alterations applied to a note. More...
#include <Details.h>
Inheritance diagram for musx::dom::details::NoteAlterations:Public Member Functions | |
| NoteAlterations (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, EntryNumber entnum, Inci inci) | |
| Constructor function. | |
| NoteNumber | getNoteId () const override |
| Required virtual function that returns the note id. | |
Public Member Functions inherited from musx::dom::EntryDetailsBase | |
| EntryNumber | getEntryNumber () const |
Gets the entnum key value. | |
Public Member Functions inherited from musx::dom::DetailsBase | |
| DetailsBase (const DetailsBase &)=default | |
| explicit default copy constructor | |
| DetailsBase (DetailsBase &&) noexcept=default | |
| explicit default move constructor | |
| 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). | |
| 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< NoteAlterations > & | xmlMappingArray () |
| Required for musx::factory::FieldPopulator. | |
Public Attributes | |
| NoteNumber | noteId {} |
The ID of the note being altered. (xml node is <noteID>) | |
| int | percent {} |
| Size percentage for the notehead. (A value of 100 means 100%.) | |
| Evpu | nxdisp {} |
| Horizontal notehead offset. | |
| char32_t | altNhead {} |
| Alternate notehead character. | |
| bool | useOwnFont {} |
| Whether to use the custom font. | |
| std::shared_ptr< FontInfo > | customFont {} |
Custom font info (consolidates: <fontID>, <fontSize>, <efx>) | |
| bool | allowVertPos {} |
| Whether vertical positioning is allowed . | |
| Evpu | nydisp {} |
| Vertical notehead offset. | |
| bool | enharmonic {} |
Static Public Attributes | |
| static constexpr std::string_view | XmlNodeName = "noteAlter" |
| 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::NoteDetailsBase | |
| EntryDetailsBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, EntryNumber entnum, std::optional< Inci > inci=std::nullopt) | |
| Constructor for NoteDetailsBase uses EntryDetailsBase constructor. | |
Protected Member Functions inherited from musx::dom::EntryDetailsBase | |
| EntryDetailsBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, EntryNumber entnum, std::optional< Inci > inci=std::nullopt) | |
| Constructs a EntryDetailsBase object. | |
Protected Member Functions inherited from musx::dom::DetailsBase | |
| DetailsBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper cmper1, Cmper cmper2, std::optional< Inci > inci=std::nullopt) | |
| Constructs a DetailsBase object. | |
| DetailsBase & | operator= (const DetailsBase &other) |
| Assignment operator delegates to base, preserving OthersBase state. | |
| DetailsBase & | operator= (DetailsBase &&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 graphical and notational alterations applied to a note.
Entry::noteDetail is set if any note in the entry has note alterations.
This class is identified by the XML node name "noteAlter".
|
inlineoverridevirtual |
Required virtual function that returns the note id.
Implements musx::dom::NoteDetailsBase.
| bool musx::dom::details::NoteAlterations::enharmonic {} |
Whether this note is enharmonically respelled. It is normally only true in linked parts as an unlinked value.