]> git.saurik.com Git - apple/icu.git/blob - icuSources/i18n/collationroot.h
ICU-64252.0.1.tar.gz
[apple/icu.git] / icuSources / i18n / collationroot.h
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 *******************************************************************************
5 * Copyright (C) 2012-2014, International Business Machines
6 * Corporation and others. All Rights Reserved.
7 *******************************************************************************
8 * collationroot.h
9 *
10 * created on: 2012dec17
11 * created by: Markus W. Scherer
12 */
13
14 #ifndef __COLLATIONROOT_H__
15 #define __COLLATIONROOT_H__
16
17 #include "unicode/utypes.h"
18
19 #if !UCONFIG_NO_COLLATION
20
21 U_NAMESPACE_BEGIN
22
23 struct CollationCacheEntry;
24 struct CollationData;
25 struct CollationSettings;
26 struct CollationTailoring;
27
28 /**
29 * Collation root provider.
30 */
31 class U_I18N_API CollationRoot { // purely static
32 public:
33 static const CollationCacheEntry *getRootCacheEntry(UErrorCode &errorCode);
34 static const CollationTailoring *getRoot(UErrorCode &errorCode);
35 static const CollationData *getData(UErrorCode &errorCode);
36 static const CollationSettings *getSettings(UErrorCode &errorCode);
37
38 private:
39 static void U_CALLCONV load(UErrorCode &errorCode);
40 };
41
42 U_NAMESPACE_END
43
44 #endif // !UCONFIG_NO_COLLATION
45 #endif // __COLLATIONROOT_H__