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 13namespace BPrivate { 14namespace Libroot { 15 16 17class ICUNumericData : public ICULocaleconvData { 18 typedef ICULocaleconvData inherited; 19 20public: 21 ICUNumericData(pthread_key_t tlsKey, 22 struct lconv& localeConv); 23 24 void Initialize(LocaleNumericDataBridge* dataBridge); 25 26 virtual status_t SetTo(const U_NAMESPACE_QUALIFIER Locale& 27 locale, 28 const char* posixLocaleName); 29 virtual status_t SetToPosix(); 30 31 virtual const char* GetLanginfo(int index); 32 33private: 34 char fDecimalPoint[skLCBufSize]; 35 char fThousandsSep[skLCBufSize]; 36 char fGrouping[skLCBufSize]; 37 38 struct lconv& fLocaleConv; 39 LocaleNumericDataBridge* fDataBridge; 40}; 41 42 43} // namespace Libroot 44} // namespace BPrivate 45 46 47#endif // _ICU_NUMERIC_DATA_H 48