LibMusicXML  3.18
lpsrLyrics.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 ___lpsrLyrics___
14 #define ___lpsrLyrics___
15 
16 #include "lpsrElements.h"
17 
18 #include "msr.h"
19 
20 #include "lpsrVariables.h"
21 
22 
23 namespace MusicXML2
24 {
25 
26 //______________________________________________________________________________
28 {
29  public:
30 
31  // creation from MusicXML
32  // ------------------------------------------------------
33 
34  static SMARTP<lpsrNewLyricsBlock> create (
35  int inputLineNumber,
36  S_msrStanza stanza,
37  S_msrVoice voice);
38 
39  protected:
40 
41  // constructors/destructor
42  // ------------------------------------------------------
43 
45  int inputLineNumber,
46  S_msrStanza stanza,
47  S_msrVoice voice);
48 
49  virtual ~lpsrNewLyricsBlock ();
50 
51  public:
52 
53  // set and get
54  // ------------------------------------------------------
55 
56  S_msrStanza getStanza () const { return fStanza; }
57  S_msrVoice getVoice () const { return fVoice; }
58 
59  // services
60  // ------------------------------------------------------
61 
62  public:
63 
64  // visitors
65  // ------------------------------------------------------
66 
67  virtual void acceptIn (basevisitor* v);
68  virtual void acceptOut (basevisitor* v);
69 
70  virtual void browseData (basevisitor* v);
71 
72  public:
73 
74  // print
75  // ------------------------------------------------------
76 
77  virtual void print (ostream& os) const;
78 
79  private:
80 
81  // fields
82  // ------------------------------------------------------
83 
84  S_msrStanza fStanza;
85  S_msrVoice fVoice;
86 };
88 EXP ostream& operator<< (ostream& os, const S_lpsrNewLyricsBlock& elt);
89 
90 
91 }
92 
93 
94 #endif
the smart pointer implementation
Definition: smartpointer.h:58
Definition: basevisitor.h:25
Definition: lpsrElements.h:24
Definition: lpsrLyrics.h:28