8 #ifndef __VRV_OSSIA_H__
9 #define __VRV_OSSIA_H__
12 #include "atts_shared.h"
40 std::string GetClassName()
const override {
return "ossia"; }
52 void AddDrawingStaffDef(
StaffDef *drawingStaffDef);
53 void ResetDrawingStaffGrp();
54 StaffGrp *GetDrawingStaffGrp() {
return &m_drawingStaffGrp; }
61 bool HasShowScoreDef()
const;
62 data_BOOLEAN GetShowScoreDef()
const;
63 bool HasShowBarLines()
const;
64 data_BOOLEAN GetShowBarLines()
const;
71 bool IsFirst()
const {
return (m_isFirst); }
72 void SetFirst(
bool isFirst) { m_isFirst = isFirst; }
73 bool IsLast()
const {
return (m_isLast); }
74 void SetLast(
bool isLast) { m_isLast = isLast; }
96 void SetClefAlignment(
Alignment *clefAlignment) { m_clefAlignment = clefAlignment; }
97 void SetKeySigAlignment(
Alignment *keySigAlignment) { m_keySigAlignment = keySigAlignment; }
98 void ResetAlignments();
115 void GetStavesAbove(MapOfOssiaStaffNs &map)
const;
116 void GetStavesBelow(MapOfOssiaStaffNs &map)
const;
123 const Staff *GetDrawingTopOStaff()
const;
124 const Staff *GetDrawingBottopOStaff()
const;
147 FunctorCode AcceptEnd(
Functor &functor)
override;
148 FunctorCode AcceptEnd(
ConstFunctor &functor)
const override;
155 void GetStaves(MapOfOssiaStaffNs &map, ListOfConstObjects &staves)
const;
This class stores an alignment position elements will point to.
Definition: horizontalaligner.h:75
This class models the MEI <barLine> element.
Definition: barline.h:34
This abstract class is the base class for all const functors.
Definition: functor.h:126
This abstract class is the base class for all mutable functors.
Definition: functor.h:101
This class represents a basic object.
Definition: object.h:64
This class represents an ossia.
Definition: ossia.h:28
std::vector< int > GetOStaffNs() const
Return the staff @n of oStaff in the order they appear.
void Reset() override
Reset the object, that is 1) removing all children and 2) resetting all attributes.
BarLine * GetDrawingLeftBarLine()
Return the drawing left bar line.
Definition: ossia.h:130
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
bool DrawScoreDef() const
Show scoreDef at drawing depending on the number of staves and the attribute values.
Object * Clone() const override
Method call for copying child classes.
Definition: ossia.h:38
int GetScoreDefShift() const
Return the ossia scoreDef shift using the clef and keySig alignments.
bool IsSupportedChild(ClassId classId) override
Methods for adding allowed content.
void CloneReset() override
Overriding CloneReset() method to be called after copy / assignment calls.
const Staff * GetOriginalStaffForOssia(const Staff *ossia) const
Retrieve the original staff corresponding to the ossia staff.
bool HasMultipleOStaves() const
Return true if the ossia element as more than one oStaff.
This class represents a MEI staffDef.
Definition: staffdef.h:37
This class represents a MEI staffGrp.
Definition: staffgrp.h:39
This class represents a staff in a laid-out score (Doc).
Definition: staff.h:110