LibMusicXML 3.18
xml2lyManPageOah.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 ___xml2lyManPageOah___
14#define ___xml2lyManPageOah___
15
16#include "oahVisitor.h"
17
18#include "xml2lyOah2ManPageGenerator.h"
19
20
21namespace MusicXML2
22{
23
24//______________________________________________________________________________
26{
27 public:
28
29 // creation
30 // ------------------------------------------------------
31
33 string shortName,
34 string longName,
35 string description,
36 S_oahVisitor theOahVisitor);
37
38 protected:
39
40 // constructors/destructor
41 // ------------------------------------------------------
42
44 string shortName,
45 string longName,
46 string description,
47 S_oahVisitor theOahVisitor);
48
50
51 public:
52
53 // set and get
54 // ------------------------------------------------------
55
56 public:
57
58 // public services
59 // ------------------------------------------------------
60
61 S_oahValuedAtom handleOptionUnderName (
62 string optionName,
63 ostream& os);
64
65 public:
66
67 // visitors
68 // ------------------------------------------------------
69
70 virtual void acceptIn (basevisitor* v);
71 virtual void acceptOut (basevisitor* v);
72
73 virtual void browseData (basevisitor* v);
74
75 public:
76
77 // print
78 // ------------------------------------------------------
79
80 void print (ostream& os) const;
81
82 void printAtomOptionsValues (
83 ostream& os,
84 int valueFieldWidth) const;
85
86 private:
87
88 // private services
89 // ------------------------------------------------------
90
91 void generateManPageData (ostream& os) const;
92
93 private:
94
95 // fields
96 // --------------------------------------
97
98 S_oahVisitor fOahVisitor;
99};
101EXP ostream& operator<< (ostream& os, const S_xml2lyManPageGenerateAtom& elt);
102
103//______________________________________________________________________________
105{
106 public:
107
108 // creation
109 // ------------------------------------------------------
110
111 static SMARTP<xml2lyManPageOah> create (
112 S_oahHandler handlerUpLink,
113 S_oahVisitor theOah2ManPageGenerator);
114
115 SMARTP<xml2lyManPageOah> createCloneWithDetailedTrace ();
116
117 public:
118
119 // initialisation
120 // ------------------------------------------------------
121
122 void initializeXml2lyManPageOah (
123 bool boolOptionsInitialValue,
125 theOah2ManPageGenerator);
126
127 public:
128
129 // constructors/destructor
130 // ------------------------------------------------------
131
133 S_oahHandler handlerUpLink,
134 S_oahVisitor theOah2ManPageGenerator);
135
136 virtual ~xml2lyManPageOah ();
137
138 public:
139
140 // set and get
141 // ------------------------------------------------------
142
143 public:
144
145 // quiet mode
146 // ------------------------------------------------------
147
148 void enforceQuietness ();
149
150 public:
151
152 // consistency check
153 // ------------------------------------------------------
154
155 virtual void checkOptionsConsistency ();
156
157 public:
158
159 // public services
160 // ------------------------------------------------------
161
162 private:
163
164 // private services
165 // ------------------------------------------------------
166
167 void initializeManPageGenerateOptions (
168 bool boolOptionsInitialValue,
170 theOah2ManPageGenerator);
171
172#ifdef TRACE_OAH
173 void initializeManPageTraceOah (
174 bool boolOptionsInitialValue);
175#endif
176
177 public:
178
179 // visitors
180 // ------------------------------------------------------
181
182 virtual void acceptIn (basevisitor* v);
183 virtual void acceptOut (basevisitor* v);
184
185 virtual void browseData (basevisitor* v);
186
187 public:
188
189 // print
190 // ------------------------------------------------------
191
192 void printManPageOahHelp ();
193
194 void printManPageOahValues (int fieldWidth);
195
196 private:
197
198 // fields
199 // --------------------------------------
200
201 S_oahVisitor fOahVisitor;
202};
204EXP ostream& operator<< (ostream& os, const S_xml2lyManPageOah& elt);
205
206EXP extern S_xml2lyManPageOah gxml2lyManPageOah;
207EXP extern S_xml2lyManPageOah gxml2lyManPageOahUserChoices;
208EXP extern S_xml2lyManPageOah gxml2lyManPageOahWithDetailedTrace;
209
210//______________________________________________________________________________
211EXP void initializeXml2lyManPageOahHandling (
212 S_oahHandler handler,
213 S_oahVisitor theOah2ManPageGenerator);
214
215
216}
217
218
219#endif
the smart pointer implementation
Definition: smartpointer.h:58
Definition: basevisitor.h:25
Definition: oahBasicTypes.h:59
Definition: oahBasicTypes.h:2854
Definition: xml2lyManPageOah.h:26
Definition: xml2lyManPageOah.h:105