Verovio
Source code documentation
parts.h
1 // Name: parts.h
3 // Author: Laurent Pugin
4 // Created: 2018/02/15
5 // Copyright (c) Authors and others. All rights reserved.
7 
8 #ifndef __VRV_PARTS_H__
9 #define __VRV_PARTS_H__
10 
11 #include "atts_shared.h"
12 #include "pageelement.h"
13 #include "pagemilestone.h"
14 
15 namespace vrv {
16 
17 //----------------------------------------------------------------------------
18 // Parts
19 //----------------------------------------------------------------------------
20 
24 class Parts : public PageElement, public PageMilestoneInterface, public AttLabelled, public AttNNumberLike {
25 
26 public:
32  Parts();
33  virtual ~Parts();
34  Object *Clone() const override { return new Parts(*this); }
35  void Reset() override;
36  std::string GetClassName() const override { return "parts"; }
38 
43  bool IsSupportedChild(ClassId classId) override;
45 
46  //----------//
47  // Functors //
48  //----------//
49 
54  FunctorCode Accept(Functor &functor) override;
55  FunctorCode Accept(ConstFunctor &functor) const override;
56  FunctorCode AcceptEnd(Functor &functor) override;
57  FunctorCode AcceptEnd(ConstFunctor &functor) const override;
59 
60 private:
61  //
62 public:
63  //
64 private:
65  //
66 };
67 
68 } // namespace vrv
69 
70 #endif
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:66
This class represents elements appearing within a page.
Definition: pageelement.h:25
This class is an interface for container elements that have to be turned to milestones in a page-base...
Definition: pagemilestone.h:83
This class represents a <parts> MEI.
Definition: parts.h:24
Object * Clone() const override
Method call for copying child classes.
Definition: parts.h:34
void Reset() override
Reset the object, that is 1) removing all children and 2) resetting all attributes.
bool IsSupportedChild(ClassId classId) override
Base method for checking if a child can be added.
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.