1 /* 2 ******************************************************************************* 3 * Copyright (C) 2012-2014, International Business Machines 4 * Corporation and others. All Rights Reserved. 5 ******************************************************************************* 6 * collationroot.h 7 * 8 * created on: 2012dec17 9 * created by: Markus W. Scherer 10 */ 11 12 #ifndef __COLLATIONROOT_H__ 13 #define __COLLATIONROOT_H__ 14 15 #include "unicode/utypes.h" 16 17 #if !UCONFIG_NO_COLLATION 18 19 U_NAMESPACE_BEGIN 20 21 struct CollationCacheEntry; 22 struct CollationData; 23 struct CollationSettings; 24 struct CollationTailoring; 25 26 /** 27 * Collation root provider. 28 */ 29 class U_I18N_API CollationRoot { // purely static 30 public: 31 static const CollationCacheEntry *getRootCacheEntry(UErrorCode &errorCode); 32 static const CollationTailoring *getRoot(UErrorCode &errorCode); 33 static const CollationData *getData(UErrorCode &errorCode); 34 static const CollationSettings *getSettings(UErrorCode &errorCode); 35 36 private: 37 static void load(UErrorCode &errorCode); 38 }; 39 40 U_NAMESPACE_END 41 42 #endif // !UCONFIG_NO_COLLATION 43 #endif // __COLLATIONROOT_H__ 44