8 #ifndef __VRV_BARLINE_H__
9 #define __VRV_BARLINE_H__
11 #include "atts_shared.h"
12 #include "atts_visual.h"
13 #include "layerelement.h"
20 enum class BarLinePosition { None, Left, Right };
33 public AttNNumberLike,
34 public AttVisibility {
46 std::string GetClassName()
const override {
return "barLine"; }
61 bool HasRepetitionDots()
const;
67 BarLinePosition GetPosition()
const {
return m_position; }
68 void SetPosition(BarLinePosition position) { m_position = position; }
81 std::pair<bool, double> GetLengthFromContext(
const StaffDef *staffDef)
const;
82 std::pair<bool, data_BARMETHOD> GetMethodFromContext(
const StaffDef *staffDef)
const;
83 std::pair<bool, int> GetPlaceFromContext(
const StaffDef *staffDef)
const;
96 FunctorCode AcceptEnd(
Functor &functor)
override;
97 FunctorCode AcceptEnd(
ConstFunctor &functor)
const override;
106 BarLinePosition m_position;
This class stores an alignment position elements will point to.
Definition: horizontalaligner.h:73
This class models the MEI <barLine> element.
Definition: barline.h:34
bool HasToBeAligned() const override
Override the method since alignment is required.
Definition: barline.h:50
void Reset() override
Reset the object, that is 1) removing all children and 2) resetting all attributes.
bool IsDrawnThrough(const StaffGrp *staffGrp) const
Check if the barline is drawn through.
bool SetAlignment(Alignment *alignment)
Use to set the alignment for the Measure BarLine members.
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
Object * Clone() const override
Method call for copying child classes.
Definition: barline.h:44
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 is a base class for the Layer (<layer>) content.
Definition: layerelement.h:51
This class represents a basic object.
Definition: object.h:61
This class represents a MEI staffDef.
Definition: staffdef.h:37
This class represents a MEI staffGrp.
Definition: staffgrp.h:39