LibMusicXML  3.18
msrPartGroupElements.h
1 /*
2  MusicXML Library
3  Copyright (C) Grame 2006-2013
4 
5  This Source Code Form is subject to the terms of the Mozilla Public
6  License, v. 2.0. If a copy of the MPL was not distributed with this
7  file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 
9  Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France
10  research@grame.fr
11 */
12 
13 #ifndef ___msrPartGroupElements___
14 #define ___msrPartGroupElements___
15 
16 #include "msrMeasureElements.h"
17 
18 
19 namespace MusicXML2
20 {
21 
22 //______________________________________________________________________________
23 /*
24  PartGroup elements, i.e. notes, chords and tuplets, can also be found in measures, hence:
25 */
27 {
28  public:
29 
30  // creation from MusicXML
31  // ------------------------------------------------------
32 
33  // cloning
34  // ------------------------------------------------------
35 
36  protected:
37 
39  int inputLineNumber);
40 
41  virtual ~msrPartGroupElement ();
42 
43  public:
44 
45 /* JMI
46  // set and get
47  // ------------------------------------------------------
48 
49  void setPartGroupNumber (
50  string positionInPartGroup)
51  {
52  fPartGroupNumber =
53  positionInPartGroup;
54  }
55 
56  string getPartGroupNumber ()
57  { return fPartGroupNumber; }
58 
59  void setPositionInPartGroup (
60  rational positionInPartGroup)
61  {
62  fPositionInPartGroup =
63  positionInPartGroup;
64  }
65 
66  rational getPositionInPartGroup ()
67  { return fPositionInPartGroup; }
68 
69  // services
70  // ------------------------------------------------------
71 
72  public:
73 
74  // visitors
75  // ------------------------------------------------------
76 
77  virtual void acceptIn (basevisitor* v);
78  virtual void acceptOut (basevisitor* v);
79 
80  virtual void browseData (basevisitor* v) = 0;
81 
82  public:
83 
84  // print
85  // ------------------------------------------------------
86 
87  virtual std::string asShortString () const;
88  virtual std::string asString () const;
89 
90  virtual void print (ostream& os) const;
91 
92  virtual void printSummary (ostream& os) {}
93 
94  protected:
95 
96  // fields
97  // ------------------------------------------------------
98 
99  string fPartGroupNumber;
100  rational fPositionInPartGroup;
101  */
102 };
104 EXP ostream& operator<< (ostream& os, const S_msrPartGroupElement& elt);
105 
106 
107 } // namespace MusicXML2
108 
109 
110 #endif
the smart pointer implementation
Definition: smartpointer.h:58
Definition: msrMeasureElements.h:24
Definition: msrPartGroupElements.h:27