8 #ifndef __VRV_ANNOTSCORE_H__
9 #define __VRV_ANNOTSCORE_H__
11 #include "controlelement.h"
12 #include "plistinterface.h"
13 #include "timeinterface.h"
35 std::string GetClassName()
const override {
return "annot"; }
42 PlistInterface *GetPlistInterface()
override {
return vrv_cast<PlistInterface *>(
this); }
43 const PlistInterface *GetPlistInterface()
const override {
return vrv_cast<const PlistInterface *>(
this); }
44 TimePointInterface *GetTimePointInterface()
override {
return vrv_cast<TimePointInterface *>(
this); }
45 const TimePointInterface *GetTimePointInterface()
const override
47 return vrv_cast<const TimePointInterface *>(
this);
49 TimeSpanningInterface *GetTimeSpanningInterface()
override {
return vrv_cast<TimeSpanningInterface *>(
this); }
50 const TimeSpanningInterface *GetTimeSpanningInterface()
const override
52 return vrv_cast<const TimeSpanningInterface *>(
this);
59 int GetLineWidth(
const Doc *doc,
int unit)
const;
79 FunctorCode AcceptEnd(
Functor &functor)
override;
80 FunctorCode AcceptEnd(
ConstFunctor &functor)
const override;
This class models the MEI <annot> element where @type is score.
Definition: annotscore.h:24
void Reset() override
Virtual reset method.
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
Object * Clone() const override
Method call for copying child classes.
Definition: annotscore.h:33
bool IsSupportedChild(ClassId classId) override
Add a text element to an annotation.
int GetBoxHeight(const Doc *doc, int unit) const
Get a value for the height of the drawn box and the border width.
This abstract class is the base class for all const functors.
Definition: functor.h:126
This class represents elements appearing within a measure.
Definition: controlelement.h:33
This class is a hold the data and corresponds to the model of a MVC design pattern.
Definition: doc.h:41
This abstract class is the base class for all mutable functors.
Definition: functor.h:101
This class represents a basic object.
Definition: object.h:61
This class is an interface for elements having a single time point, such as tempo,...
Definition: plistinterface.h:29
This class is an interface for spanning elements, such as slur, hairpin, etc.
Definition: timeinterface.h:145