LibMusicXML  3.18
xml2lyOahTypes.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 ___xml2lyOahTypes___
14 #define ___xml2lyOahTypes___
15 
16 #include "oahBasicTypes.h"
17 
18 
19 namespace MusicXML2
20 {
21 
22 //______________________________________________________________________________
24 {
25  public:
26 
27  // creation
28  // ------------------------------------------------------
29 
30  static SMARTP<xml2lyVersionOahAtom> create (
31  string shortName,
32  string longName,
33  string description);
34 
35  protected:
36 
37  // constructors/destructor
38  // ------------------------------------------------------
39 
41  string shortName,
42  string longName,
43  string description);
44 
45  virtual ~xml2lyVersionOahAtom ();
46 
47  public:
48 
49  // set and get
50  // ------------------------------------------------------
51 
52  public:
53 
54  // services
55  // ------------------------------------------------------
56 
57  S_oahValuedAtom handleOptionUnderName (
58  string optionName,
59  ostream& os);
60 
61  public:
62 
63  // visitors
64  // ------------------------------------------------------
65 
66  virtual void acceptIn (basevisitor* v);
67  virtual void acceptOut (basevisitor* v);
68 
69  virtual void browseData (basevisitor* v);
70 
71  // print
72  // ------------------------------------------------------
73 
74  void print (ostream& os) const;
75 
76  void printVersion (ostream& os) const;
77 
78  void printAtomOptionsValues (
79  ostream& os,
80  int valueFieldWidth) const;
81 
82  private:
83 
84  // fields
85  // ------------------------------------------------------
86 };
88 EXP ostream& operator<< (ostream& os, const S_xml2lyVersionOahAtom& elt);
89 
90 //______________________________________________________________________________
92 {
93  public:
94 
95  // creation
96  // ------------------------------------------------------
97 
98  static SMARTP<xml2lyAboutOahAtom> create (
99  string shortName,
100  string longName,
101  string description);
102 
103  protected:
104 
105  // constructors/destructor
106  // ------------------------------------------------------
107 
109  string shortName,
110  string longName,
111  string description);
112 
113  virtual ~xml2lyAboutOahAtom ();
114 
115  public:
116 
117  // set and get
118  // ------------------------------------------------------
119 
120  public:
121 
122  // services
123  // ------------------------------------------------------
124 
125  S_oahValuedAtom handleOptionUnderName (
126  string optionName,
127  ostream& os);
128 
129  public:
130 
131  // visitors
132  // ------------------------------------------------------
133 
134  virtual void acceptIn (basevisitor* v);
135  virtual void acceptOut (basevisitor* v);
136 
137  virtual void browseData (basevisitor* v);
138 
139  // print
140  // ------------------------------------------------------
141 
142  void print (ostream& os) const;
143 
144  void printAbout (ostream& os) const;
145 
146  void printAtomOptionsValues (
147  ostream& os,
148  int valueFieldWidth) const;
149 
150  private:
151 
152  // fields
153  // ------------------------------------------------------
154 };
156 EXP ostream& operator<< (ostream& os, const S_xml2lyAboutOahAtom& elt);
157 
158 //______________________________________________________________________________
160 {
161  public:
162 
163  // creation
164  // ------------------------------------------------------
165 
166  static SMARTP<xml2lyContactOahAtom> create (
167  string shortName,
168  string longName,
169  string description);
170 
171  protected:
172 
173  // constructors/destructor
174  // ------------------------------------------------------
175 
177  string shortName,
178  string longName,
179  string description);
180 
181  virtual ~xml2lyContactOahAtom ();
182 
183  public:
184 
185  // set and get
186  // ------------------------------------------------------
187 
188  public:
189 
190  // services
191  // ------------------------------------------------------
192 
193  S_oahValuedAtom handleOptionUnderName (
194  string optionName,
195  ostream& os);
196 
197  public:
198 
199  // visitors
200  // ------------------------------------------------------
201 
202  virtual void acceptIn (basevisitor* v);
203  virtual void acceptOut (basevisitor* v);
204 
205  virtual void browseData (basevisitor* v);
206 
207  // print
208  // ------------------------------------------------------
209 
210  void print (ostream& os) const;
211 
212  void printContact (ostream& os) const;
213 
214  void printAtomOptionsValues (
215  ostream& os,
216  int valueFieldWidth) const;
217 
218  private:
219 
220  // fields
221  // ------------------------------------------------------
222 };
224 EXP ostream& operator<< (ostream& os, const S_xml2lyContactOahAtom& elt);
225 
226 
227 }
228 
229 
230 #endif
the smart pointer implementation
Definition: smartpointer.h:58
Definition: basevisitor.h:25
Definition: oahBasicTypes.h:59
Definition: xml2lyOahTypes.h:92
Definition: xml2lyOahTypes.h:160
Definition: xml2lyOahTypes.h:24