1/*
2*******************************************************************************
3*
4*   Copyright (C) 2005, International Business Machines
5*   Corporation and others.  All Rights Reserved.
6*
7*******************************************************************************
8*   file name:  swapimpl.h
9*   encoding:   US-ASCII
10*   tab size:   8 (not used)
11*   indentation:4
12*
13*   created on: 2005jul29
14*   created by: Markus W. Scherer
15*
16*   Declarations for data file swapping functions not declared in internal
17*   library headers.
18*/
19
20#ifndef __SWAPIMPL_H__
21#define __SWAPIMPL_H__
22
23#include "unicode/utypes.h"
24#include "udataswp.h"
25
26/**
27 * Identifies and then transforms the ICU data piece in-place, or determines
28 * its length. See UDataSwapFn.
29 * This function handles single data pieces (but not .dat data packages)
30 * and internally dispatches to per-type swap functions.
31 * Sets a U_UNSUPPORTED_ERROR if the data format is not recognized.
32 *
33 * @see UDataSwapFn
34 * @see udata_openSwapper
35 * @see udata_openSwapperForInputData
36 * @internal ICU 2.8
37 */
38U_CAPI int32_t U_EXPORT2
39udata_swap(const UDataSwapper *ds,
40           const void *inData, int32_t length, void *outData,
41           UErrorCode *pErrorCode);
42
43#endif
44