xref: /haiku/headers/private/libroot/locale/ICUNumericData.h (revision f2b4344867e97c3f4e742a1b4a15e6879644601a)
1 /*
2  * Copyright 2010-2011, Oliver Tappe, zooey@hirschkaefer.de.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef _ICU_NUMERIC_DATA_H
6 #define _ICU_NUMERIC_DATA_H
7 
8 
9 #include "ICULocaleconvData.h"
10 #include "LocaleBackend.h"
11 
12 
13 namespace BPrivate {
14 namespace Libroot {
15 
16 
17 class ICUNumericData : public ICULocaleconvData {
18 	typedef	ICULocaleconvData	inherited;
19 
20 public:
21 								ICUNumericData(pthread_key_t tlsKey,
22 									struct lconv& localeConv);
23 
24 			void				Initialize(LocaleNumericDataBridge* dataBridge);
25 
26 	virtual	status_t			SetTo(const Locale& locale,
27 									const char* posixLocaleName);
28 	virtual	status_t			SetToPosix();
29 
30 	virtual	const char*			GetLanginfo(int index);
31 
32 private:
33 			char				fDecimalPoint[skLCBufSize];
34 			char				fThousandsSep[skLCBufSize];
35 			char				fGrouping[skLCBufSize];
36 
37 			struct lconv&		fLocaleConv;
38 			LocaleNumericDataBridge* fDataBridge;
39 };
40 
41 
42 }	// namespace Libroot
43 }	// namespace BPrivate
44 
45 
46 #endif	// _ICU_NUMERIC_DATA_H
47