LibMusicXML 3.18
msrMidi.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 ___msrMidi___
14#define ___msrMidi___
15
16#include "msrElements.h"
17
18#include "msrBasicTypes.h"
19
20
21namespace MusicXML2
22{
23
24//______________________________________________________________________________
26{
27 public:
28
29 // creation from MusicXML
30 // ------------------------------------------------------
31
32 static SMARTP<msrMidiTempo> create (
33 int inputLineNumber,
34 string midiTempoDuration,
35 int midiTempoPerSecond);
36
37 SMARTP<msrMidiTempo> createMsrMidiTempoNewbornClone ();
38
39 public:
40
41 // constructors/destructor
42 // ------------------------------------------------------
43
45 int inputLineNumber,
46 string midiTempoDuration,
47 int midiTempoPerSecond);
48
49 msrMidiTempo ();
50
51 virtual ~msrMidiTempo ();
52
53 public:
54
55 // set and get
56 // ------------------------------------------------------
57 void setMidiTempoDuration (string value)
58 { fMidiTempoDuration = value; }
59
60 string getMidiTempoDuration () const
61 { return fMidiTempoDuration; }
62
63 void setMidiTempoPerSecond (int value)
64 { fMidiTempoPerSecond = value; }
65
66 int getMidiTempoPerSecond () const
67 { return fMidiTempoPerSecond; }
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);
81
82 public:
83
84 // print
85 // ------------------------------------------------------
86
87 virtual void print (ostream& os) const;
88
89 private:
90
91 // fields
92 // ------------------------------------------------------
93
94 string fMidiTempoDuration;
95 int fMidiTempoPerSecond;
96};
98EXP ostream& operator<< (ostream& os, const S_msrMidiTempo& elt);
99
100
101} // namespace MusicXML2
102
103
104#endif
Definition: basevisitor.h:25
Definition: msrElements.h:26
Definition: msrMidi.h:26