11 #include "atts_externalsymbols.h"
12 #include "atts_shared.h"
13 #include "layerelement.h"
14 #include "offsetinterface.h"
19 class ScoreDefInterface;
33 public AttEnclosingChars,
35 public AttExtSymNames,
38 public AttOctaveDisplacement,
41 public AttVisibility {
52 std::string GetClassName()
const override {
return "clef"; }
59 OffsetInterface *GetOffsetInterface()
override {
return vrv_cast<OffsetInterface *>(
this); }
60 const OffsetInterface *GetOffsetInterface()
const override {
return vrv_cast<const OffsetInterface *>(
this); }
93 FunctorCode AcceptEnd(
Functor &functor)
override;
94 FunctorCode AcceptEnd(
ConstFunctor &functor)
const override;
This class models the MEI <clef> element.
Definition: clef.h:41
int GetClefLocOffset() const
Return the offset of the clef.
void Reset() override
Virtual reset method.
char32_t GetClefGlyph(const data_NOTATIONTYPE notationType) const
Retrieves the appropriate SMuFL code for a data_CLEFSHAPE.
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
Object * Clone() const override
Method call for copying child classes.
Definition: clef.h:50
bool IsScoreDefElement() const override
Override the method since check is required.
Definition: clef.h:67
bool HasToBeAligned() const override
Override the method since alignment is required.
Definition: clef.h:64
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:64
Object * GetFirstAncestor(const ClassId classId, int maxSteps=-1)
Return the first ancestor of the specified type.
Object * GetParent()
Get the parent of the Object.
Definition: object.h:398
This class is an interface for elements having a single visual offset, such as arpeg,...
Definition: offsetinterface.h:28