LibMusicXML
3.18
src
lilypond
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
*/
26
class
msrTupletElement
:
public
msrMeasureElement
27
{
28
public
:
29
30
// creation from MusicXML
31
// ------------------------------------------------------
32
33
// cloning
34
// ------------------------------------------------------
35
36
protected
:
37
38
msrTupletElement
(
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
};
103
typedef
SMARTP<msrTupletElement>
S_msrTupletElement
;
104
EXP ostream& operator<< (ostream& os,
const
S_msrTupletElement
& elt);
105
106
107
}
// namespace MusicXML2
108
109
110
#endif
MusicXML2::SMARTP
the smart pointer implementation
Definition:
smartpointer.h:58
MusicXML2::msrMeasureElement
Definition:
msrMeasureElements.h:24
MusicXML2::msrTupletElement
Definition:
msrTupletElements.h:27
Generated by
1.9.3