MUSX Document Model
|
Contains the baseline information for all baseline types. More...
#include <Details.h>
Public Member Functions | |
Baseline (const DocumentWeakPtr &document, Cmper partId, ShareMode shareMode, Cmper system, Cmper staff, std::optional< Inci > inci=std::nullopt) | |
Constructor function. | |
![]() | |
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 void | integrityCheck () |
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< Baseline > & | xmlMappingArray () |
Required for musx::factory::FieldPopulator. | |
Public Attributes | |
Evpu | baselineDisplacement {} |
the displacment of the baseline from default position. (xml node is <basedisp >) | |
Cmper | lyricNumber {} |
the text number of the lyric, if this is a lyrics baseline. Otherwise unused and should be zero. | |
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 | |
Contains the baseline information for all baseline types.
|
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 Baseline. |
system | For system baselines, the system number. For global baselines, 0. |
staff | For staff-level baselines, the staff number. For global baselines, 0. |
inci | The 0-based inci, if needed. (Lyrics baselines have multiple instances per lyricNumber.) |