LibMusicXML  3.18
msrTupletElements.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 ___msrTupletElements___
14 #define ___msrTupletElements___
15 
16 #include "msrMeasureElements.h"
17 
18 
19 namespace MusicXML2
20 {
21 
22 //______________________________________________________________________________
23 /*
24  Tuplet 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 ~msrTupletElement ();
42 
43  public:
44 
45 /* JMI
46  // set and get
47  // ------------------------------------------------------
48 
49  void setTupletNumber (
50  string positionInTuplet)
51  {
52  fTupletNumber =
53  positionInTuplet;
54  }
55 
56  string getTupletNumber ()
57  { return fTupletNumber; }
58 
59  void setPositionInTuplet (
60  rational positionInTuplet)
61  {
62  fPositionInTuplet =
63  positionInTuplet;
64  }
65 
66  rational getPositionInTuplet ()
67  { return fPositionInTuplet; }
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 fTupletNumber;
100  rational fPositionInTuplet;
101  */
102 };
104 EXP ostream& operator<< (ostream& os, const S_msrTupletElement& elt);
105 
106 
107 } // namespace MusicXML2
108 
109 
110 #endif
MusicXML2::msrTupletElement
Definition: msrTupletElements.h:27
MusicXML2::msrMeasureElement
Definition: msrMeasureElements.h:24
MusicXML2::SMARTP
the smart pointer implementation
Definition: smartpointer.h:58