Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

XalanNumberingResourceBundle.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #if !defined(XALAN_NUMBERINGRESOURCEBUNDLE_HEADER_GUARD)
18 #define XALAN_NUMBERINGRESOURCEBUNDLE_HEADER_GUARD
19 
20 
21 
22 // Base include file. Must be first.
24 
25 
26 
28 
29 
30 
32 
33 
34 
35 XALAN_CPP_NAMESPACE_BEGIN
36 
38 
40 {
41 public:
42 
43  typedef unsigned long NumberType;
44 
47 
48  // Enum to describe language orientation. (English is left-to-right,
49  // Hebrew is right-to-left, etc.)
50  enum eOrientation { eLeftToRight, eRightToLeft, eTopToBottom, eBottomToTop };
51 
52  // Enum to describe how numbering is done.
53  enum eNumberingMethod { eAdditive, eMultiplicativeAdditive };
54 
55  // Enum to describe the where the multiplier goes.
56  enum eMultiplierOrder { eFollows, ePrecedes };
57 
58 
59  XalanNumberingResourceBundle(
60  const XalanDOMString& theLanguage,
61  const XalanDOMString& theUILanguage,
62  const XalanDOMString& theHelpLanguage,
63  const XalanDOMCharVectorType& theAlphabet,
64  const XalanDOMCharVectorType& theTraditionalAlphabet,
65  eOrientation theOrientation,
66  eNumberingMethod theNumberingMethod,
67  eMultiplierOrder theMultiplierOrder,
68  NumberType theMaxNumericalValue,
69  const NumberTypeVectorType& theNumberGroups,
70  const NumberTypeVectorType& theMultipliers,
71  const XalanDOMCharVectorType& theZeroChar,
72  const XalanDOMCharVectorType& theMultiplierChars,
73  const DigitsTableVectorType& theDigitsTable,
74  const NumberTypeVectorType& theDigitsTableTable,
75  MemoryManagerType& theManager);
76 
77  explicit
78  XalanNumberingResourceBundle(MemoryManagerType& theManager);
79 
80  XalanNumberingResourceBundle(const XalanNumberingResourceBundle& theSource,
81  MemoryManagerType& theManager);
82 
83  ~XalanNumberingResourceBundle();
84 
87  {
88  return m_language.getMemoryManager();
89  }
90 
91  bool
92  operator==(const XalanNumberingResourceBundle& theRHS) const
93  {
94  return equals(m_language, theRHS.m_language);
95  }
96 
97  const XalanDOMString&
98  getLanguage() const
99  {
100  return m_language;
101  }
102 
103  const XalanDOMString&
105  {
106  return m_uiLanguage;
107  }
108 
109  const XalanDOMString&
111  {
112  return m_helpLanguage;
113  }
114 
116  getAlphabet() const
117  {
118  return m_alphabet;
119  }
120 
123  {
124  return m_traditionalAlphabet;
125  }
126 
127  eOrientation
129  {
130  return m_orientation;
131  }
132 
133  eNumberingMethod
135  {
136  return m_numberingMethod;
137  }
138 
139  eMultiplierOrder
141  {
142  return m_multiplierOrder;
143  }
144 
145  NumberType
147  {
148  return m_maxNumericalValue;
149  }
150 
151  const NumberTypeVectorType&
153  {
154  return m_numberGroups;
155  }
156 
157  const NumberTypeVectorType&
159  {
160  return m_multipliers;
161  }
162 
164  getZeroChar() const
165  {
166  return m_zeroChar;
167  }
168 
171  {
172  return m_multiplierChars;
173  }
174 
175  const DigitsTableVectorType&
177  {
178  return m_digitsTable;
179  }
180 
181  const NumberTypeVectorType&
183  {
184  return m_digitsTableTable;
185  }
186 
187  void
188  swap(XalanNumberingResourceBundle& theOther);
189 
190 private:
191 
192  XalanDOMString m_language;
193 
194  XalanDOMString m_uiLanguage;
195 
196  XalanDOMString m_helpLanguage;
197 
198  XalanDOMCharVectorType m_alphabet;
199 
200  XalanDOMCharVectorType m_traditionalAlphabet;
201 
202  eOrientation m_orientation;
203 
204  eNumberingMethod m_numberingMethod;
205 
206  eMultiplierOrder m_multiplierOrder;
207 
208  NumberType m_maxNumericalValue;
209 
210  NumberTypeVectorType m_numberGroups;
211 
212  NumberTypeVectorType m_multipliers;
213 
214  XalanDOMCharVectorType m_zeroChar;
215 
216  XalanDOMCharVectorType m_multiplierChars;
217 
218  DigitsTableVectorType m_digitsTable;
219 
220  NumberTypeVectorType m_digitsTableTable;
221 };
222 
223 
224 
225 XALAN_CPP_NAMESPACE_END
226 
227 
228 
229 #endif // XALAN_NUMBERINGRESOURCEBUNDLE_HEADER_GUARD

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo