scuffed-code/icu4c/source/samples/ucnv/flagcb.h
Steven R. Loomis 87de767df6 ICU-2076 samples, 2.2, safeclone
X-SVN-Rev: 9708
2002-08-14 00:22:30 +00:00

61 lines
1.5 KiB
C

/* Copyright (c) 2000 IBM, Inc. and Others.
FLAGCB.H - interface to 'flagging' callback which
simply marks the fact that the callback was called.
*/
#ifndef _FLAGCB
#define _FLAGCB
#include "unicode/utypes.h"
#include "unicode/ucnv.h"
/* The structure of a FromU Flag context.
(conceivably there could be a ToU Flag Context) */
typedef struct
{
UConverterFromUCallback subCallback;
const void *subContext;
UBool flag;
} FromUFLAGContext;
/**
* open the context
*/
U_CAPI FromUFLAGContext* U_EXPORT2 flagCB_fromU_openContext();
/**
* the actual callback
*/
U_CAPI void U_EXPORT2 flagCB_fromU(
const void *context,
UConverterFromUnicodeArgs *fromUArgs,
const UChar* codeUnits,
int32_t length,
UChar32 codePoint,
UConverterCallbackReason reason,
UErrorCode * err);
typedef struct
{
UConverterFromUCallback subCallback;
const void *subContext;
uint32_t magic; /* 0xC0FFEE to identify that the object is OK */
uint32_t serial; /* minted from nextSerial */
} debugCBContext;
U_CAPI void debugCB_fromU(const void *context,
UConverterFromUnicodeArgs *fromUArgs,
const UChar* codeUnits,
int32_t length,
UChar32 codePoint,
UConverterCallbackReason reason,
UErrorCode * err);
U_CAPI debugCBContext *debugCB_openContext();
#endif