|
MUSX Document Model
|
Represents a single clef definition. More...
#include <Options.h>
Inheritance diagram for musx::dom::options::ClefOptions::ClefDef:Public Member Functions | |
| bool | isBlank () const |
| Returns true if this is a blank clef. | |
| ClefInfo | calcInfo (const MusxInstance< others::Staff > &currStaff=nullptr) const |
| Calculates and returns the clef information. | |
| MusxInstance< FontInfo > | calcFont () const |
| Calculate the font that applies to this clef, based on the options in ClefDef. | |
| ContainedClassBase (const MusxInstance< EnigmaBase > &parent) | |
| Constructs a ContainedClassBase object. | |
Public Member Functions inherited from musx::dom::ContainedClassBase | |
| ContainedClassBase (const MusxInstance< EnigmaBase > &parent) | |
| Constructs a ContainedClassBase object. | |
| template<typename ParentClass = EnigmaBase> | |
| MusxInstance< ParentClass > | getParent () const |
| Get the parent. | |
Public Member Functions inherited from musx::dom::EnigmaBase | |
| 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< EnigmaBase > &ptrToThis) |
| Performs a final consistency check after population. | |
| virtual bool | requireAllFields () const |
| Returns true if all fields are required for valid input. | |
Public Member Functions inherited from musx::dom::DocumentElement | |
| virtual | ~DocumentElement () noexcept(false)=default |
| Virtual destructor for polymorphic behavior. | |
| DocumentPtr | getDocument () const |
| Gets a reference to the Document. | |
| Cmper | getPartId () const |
| Gets the part id associated with this instance. | |
Static Public Member Functions | |
| static const xml::XmlElementArray< ClefDef > & | xmlMappingArray () |
| Required for musx::factory::FieldPopulator. | |
Public Attributes | |
| int | middleCPos {} |
Staff position of middle-C for this clef from reference staffline (usually the top). (xml node is <adjust>.) | |
| char32_t | clefChar {} |
| UTF-32 character code for the clef symbol. | |
| int | staffPosition {} |
Staff position of the clef symbol's baseline, from reference staffline (usually the top). (xml node is <clefYDisp>) | |
| Efix | baselineAdjust {} |
Additional baseline adjustment in Efix. (xml node is <baseAdjust>) | |
| Cmper | shapeId {} |
Shape ID if the clef is represented as a shape. (xml node is <shapeID>) | |
| bool | isShape {} |
| Indicates if the clef is a shape. | |
| bool | scaleToStaffHeight {} |
| Indicates if the shape should scale to staff height. | |
| bool | useOwnFont {} |
| Indicates if the clef has its own font. | |
| std::shared_ptr< FontInfo > | font |
When useOwnFont is true, this is the clef's font. Otherwise nullptr. | |
Additional Inherited Members | |
Public Types inherited from musx::dom::EnigmaBase | |
| 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::EnigmaBase | |
| EnigmaBase (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode) | |
| Constructs the base class. | |
| EnigmaBase (const EnigmaBase &)=default | |
| explicit default copy constructor | |
| EnigmaBase (EnigmaBase &&) noexcept=default | |
| explicit default move constructor | |
| EnigmaBase & | operator= (const EnigmaBase &) |
| no-op copy assignment operator allows subclasses to copy their values. | |
| EnigmaBase & | operator= (EnigmaBase &&) noexcept |
| no-op move assignment operator allows subclasses to move their values. | |
Protected Member Functions inherited from musx::dom::DocumentElement | |
| DocumentElement (const DocumentWeakPtr &document, Cmper partId) | |
| Constructs the document element. | |
| DocumentElement (const DocumentElement &)=default | |
| explicit default copy constructor | |
| DocumentElement (DocumentElement &&) noexcept=default | |
| explicit default move constructor | |
| DocumentElement & | operator= (const DocumentElement &) |
| no-op copy assignment operator allows subclasses to copy their values. | |
| DocumentElement & | operator= (DocumentElement &&) noexcept |
| no-op move assignment operator allows subclasses to move their values. | |
Represents a single clef definition.
| MusxInstance< FontInfo > musx::dom::options::ClefOptions::ClefDef::calcFont | ( | ) | const |
| ClefOptions::ClefInfo musx::dom::options::ClefOptions::ClefDef::calcInfo | ( | const MusxInstance< others::Staff > & | currStaff = nullptr | ) | const |
Calculates and returns the clef information.
| currStaff | For most accurate results, pass the current others::StaffComposite instance. If you omit this parameter, percussion and tab staves are identified based on the Finale SMuFL default file settings. If you supply it, staves with a notation style of tablature always return a tab clef and staves with a notation style of percussion always return a percussion clef. Normal notation style detects clefs as if currStaff had not been supplied. |
|
inline |
Constructs a ContainedClassBase object.
| parent | A shared pointer to the parent document. |