Verovio
Source code documentation
multirest.h
1 // Name: multirest.h
3 // Author: Rodolfo Zitellini
4 // Created: 2013
5 // Copyright (c) Authors and others. All rights reserved.
7 
8 #ifndef __VRV_MULTIREST_H__
9 #define __VRV_MULTIREST_H__
10 
11 #include "atts_cmn.h"
12 #include "atts_shared.h"
13 #include "atts_visual.h"
14 #include "layerelement.h"
15 #include "positioninterface.h"
16 
17 namespace vrv {
18 
19 //----------------------------------------------------------------------------
20 // MultiRest
21 //----------------------------------------------------------------------------
22 
26 class MultiRest : public LayerElement,
27  public PositionInterface,
28  public AttColor,
29  public AttMultiRestVis,
30  public AttNumbered,
31  public AttNumberPlacement,
32  public AttWidth {
33 public:
39  MultiRest();
40  virtual ~MultiRest();
41  Object *Clone() const override { return new MultiRest(*this); }
42  void Reset() override;
43  std::string GetClassName() const override { return "multiRest"; }
45 
50  PositionInterface *GetPositionInterface() override { return vrv_cast<PositionInterface *>(this); }
51  const PositionInterface *GetPositionInterface() const override { return vrv_cast<const PositionInterface *>(this); }
53 
57  bool UseBlockStyle(const Doc *doc) const;
58 
63  FunctorCode Accept(Functor &functor) override;
64  FunctorCode Accept(ConstFunctor &functor) const override;
65  FunctorCode AcceptEnd(Functor &functor) override;
66  FunctorCode AcceptEnd(ConstFunctor &functor) const override;
68 
69 private:
70  //
71 public:
72  //
73 private:
74 };
75 
76 } // namespace vrv
77 
78 #endif
This abstract class is the base class for all const functors.
Definition: functor.h:126
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 is a base class for the Layer (<layer>) content.
Definition: layerelement.h:51
This class models the MEI <multiRest> element.
Definition: multirest.h:32
Object * Clone() const override
Method call for copying child classes.
Definition: multirest.h:41
bool UseBlockStyle(const Doc *doc) const
True if block style rendering applies.
void Reset() override
Virtual reset method.
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
This class represents a basic object.
Definition: object.h:64
This class is an interface for elements with a position on the staff, such as rests.
Definition: positioninterface.h:30