LibMusicXML 3.18
bsrNumbers_MUT_DEP.h
1/*
2 This file is to be included only by bsrMutualDependencies.h,
3 to satisfy declarations mutual dependencies.
4*/
5
6//______________________________________________________________________________
8{
9 public:
10
11 // data types
12 // ------------------------------------------------------
13
14 enum bsrNumberSignIsNeededKind {
15 kNumberSignIsNeededYes, kNumberSignIsNeededNo};
16
17 static string numberSignIsNeededKindAsString (
18 bsrNumberSignIsNeededKind numberSignIsNeededKind);
19
20 // creation
21 // ------------------------------------------------------
22
23 static SMARTP<bsrNumber> create (
24 int inputLineNumber,
25 int numberValue,
26 bsrNumberSignIsNeededKind
27 numberSignIsNeededKind);
28
29 protected:
30
31 // constructors/destructor
32 // ------------------------------------------------------
33
34 bsrNumber (
35 int inputLineNumber,
36 int numberValue,
37 bsrNumberSignIsNeededKind
38 numberSignIsNeededKind);
39
40 virtual ~bsrNumber ();
41
42 public:
43
44 // set and get
45 // ------------------------------------------------------
46
47 int getNumberValue () const
48 { return fNumberValue; }
49
50 void setNumberSignIsNeededKind (
51 bsrNumberSignIsNeededKind
52 numberSignIsNeededKindvalue)
53 {
54 fNumberSignIsNeededKind =
55 numberSignIsNeededKindvalue;
56 }
57
58 bsrNumberSignIsNeededKind
59 getNumberSignIsNeededKind () const
60 { return fNumberSignIsNeededKind; }
61
62 S_bsrCellsList getNumberCellsList () const
63 { return fNumberCellsList; }
64
65 // public services
66 // ------------------------------------------------------
67
68 S_bsrCellsList fetchCellsList () const
69 { return fNumberCellsList; }
70
71 int fetchCellsNumber () const;
72
73 private:
74
75 // private services
76 // ------------------------------------------------------
77
78 S_bsrCellsList numberValueAsCellsList () const;
79
80 S_bsrCellsList buildCellsList () const;
81
82 public:
83
84 // visitors
85 // ------------------------------------------------------
86
87 virtual void acceptIn (basevisitor* v);
88 virtual void acceptOut (basevisitor* v);
89
90 virtual void browseData (basevisitor* v);
91
92 public:
93
94 // print
95 // ------------------------------------------------------
96
97 string asString () const;
98
99 virtual void print (ostream& os) const;
100
101 private:
102
103 // fields
104 // ------------------------------------------------------
105
106 int fNumberValue;
107
108 bsrNumberSignIsNeededKind
109 fNumberSignIsNeededKind;
110
111 S_bsrCellsList fNumberCellsList;
112};
113typedef SMARTP<bsrNumber> S_bsrNumber;
114EXP ostream& operator<< (ostream& os, const S_bsrNumber& elt);
115
Definition: bsrLineElements_MUT_DEP.h:8
Definition: bsrNumbers_MUT_DEP.h:8