1 /*
2 *******************************************************************************
3 *
4 *   Copyright (C) 2003-2014, International Business Machines
5 *   Corporation and others.  All Rights Reserved.
6 *
7 *******************************************************************************
8 *   file name:  ucol_swp.h
9 *   encoding:   US-ASCII
10 *   tab size:   8 (not used)
11 *   indentation:4
12 *
13 *   created on: 2003sep10
14 *   created by: Markus W. Scherer
15 *
16 *   Swap collation binaries.
17 */
18 
19 #ifndef __UCOL_SWP_H__
20 #define __UCOL_SWP_H__
21 
22 #include "unicode/utypes.h"
23 
24 #if !UCONFIG_NO_COLLATION
25 
26 #include "udataswp.h"
27 
28 /*
29  * Does the data look like a collation binary?
30  * @internal
31  */
32 U_INTERNAL UBool U_EXPORT2
33 ucol_looksLikeCollationBinary(const UDataSwapper *ds,
34                               const void *inData, int32_t length);
35 
36 /**
37  * Swap ICU collation data like ucadata.icu. See udataswp.h.
38  * @internal
39  */
40 U_CAPI int32_t U_EXPORT2
41 ucol_swap(const UDataSwapper *ds,
42           const void *inData, int32_t length, void *outData,
43           UErrorCode *pErrorCode);
44 
45 /**
46  * Swap inverse UCA collation data (invuca.icu). See udataswp.h.
47  * @internal
48  */
49 U_CAPI int32_t U_EXPORT2
50 ucol_swapInverseUCA(const UDataSwapper *ds,
51                     const void *inData, int32_t length, void *outData,
52                     UErrorCode *pErrorCode);
53 
54 #endif /* #if !UCONFIG_NO_COLLATION */
55 
56 #endif
57