Verovio
Source code documentation
part.h
1 // Name: part.h
3 // Author: Laurent Pugin
4 // Created: 2026
5 // Copyright (c) Authors and others. All rights reserved.
7 
8 #ifndef __VRV_PART_H__
9 #define __VRV_PART_H__
10 
11 #include "scoreorpartelement.h"
12 
13 namespace vrv {
14 
15 //----------------------------------------------------------------------------
16 // Part
17 //----------------------------------------------------------------------------
18 
22 class Part : public ScoreOrPartElement {
23 
24 public:
30  Part(bool createScoreDef);
31  Part();
32  virtual ~Part();
33  Object *Clone() const override { return new Part(*this); }
34  void Reset() override;
35  std::string GetClassName() const override { return "part"; }
37 
38  //----------//
39  // Functors //
40  //----------//
41 
46  FunctorCode Accept(Functor &functor) override;
47  FunctorCode Accept(ConstFunctor &functor) const override;
48  FunctorCode AcceptEnd(Functor &functor) override;
49  FunctorCode AcceptEnd(ConstFunctor &functor) const override;
51 
52 private:
53  //
54 public:
55  //
56 private:
57  //
58 };
59 
60 } // namespace vrv
61 
62 #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 represent a <part> MEI.
Definition: part.h:22
Object * Clone() const override
Method call for copying child classes.
Definition: part.h:33
void Reset() override
Reset the object, that is 1) removing all children and 2) resetting all attributes.
FunctorCode Accept(Functor &functor) override
Interface for class functor visitation.
This class represents a <score> or a <part> in MEI.
Definition: scoreorpartelement.h:33