Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

UDataInfo Struct Reference

UDataInfo contains the properties about the requested data. More...

#include <udata.h>

List of all members.

Public Attributes

uint16_t size
 @memo sizeof(UDataInfo). More...

uint16_t reservedWord
 @memo unused, set to 0. More...

uint8_t isBigEndian
 @memo 0 for little-endian machine, 1 for big-endian. More...

uint8_t charsetFamily
 @memo see U_CHARSET_FAMILY values in utypes.h. More...

uint8_t sizeofUChar
 @memo sizeof(UChar), one of { 1, 2, 4 }. More...

uint8_t reservedByte
 @memo unused, set to 0. More...

uint8_t dataFormat [4]
 @memo data format identifier. More...

uint8_t formatVersion [4]
 @memo versions: [0] major [1] minor [2] milli [3] micro. More...

uint8_t dataVersion [4]
 @memo versions: [0] major [1] minor [2] milli [3] micro. More...


Detailed Description

UDataInfo contains the properties about the requested data.

This is meta data.

This structure may grow in the future, indicated by the size field.

The platform data property fields help determine if a data file can be efficiently used on a given machine. The particular fields are of importance only if the data is affected by the properties - if there is integer data with word sizes > 1 byte, char* text, or UChar* text.

The implementation for the udata_open[Choice]() functions may reject data based on the value in isBigEndian. No other field is used by the udata API implementation.

The dataFormat may be used to identify the kind of data, e.g. a converter table.

The formatVersion field should be used to make sure that the format can be interpreted. I may be a good idea to check only for the one or two highest of the version elements to allow the data memory to get more or somewhat rearranged contents, for as long as the using code can still interpret the older contents.

The dataVersion field is intended to be a common place to store the source version of the data; for data from the Unicode character database, this could reflect the Unicode version.

Stable:
ICU 2.0

Definition at line 72 of file udata.h.


Member Data Documentation

uint8_t UDataInfo::charsetFamily
 

@memo see U_CHARSET_FAMILY values in utypes.h.

Stable:
ICU 2.0

Definition at line 88 of file udata.h.

uint8_t UDataInfo::dataFormat[4]
 

@memo data format identifier.

Stable:
ICU 2.0

Definition at line 100 of file udata.h.

uint8_t UDataInfo::dataVersion[4]
 

@memo versions: [0] major [1] minor [2] milli [3] micro.

Stable:
ICU 2.0

Definition at line 108 of file udata.h.

uint8_t UDataInfo::formatVersion[4]
 

@memo versions: [0] major [1] minor [2] milli [3] micro.

Stable:
ICU 2.0

Definition at line 104 of file udata.h.

uint8_t UDataInfo::isBigEndian
 

@memo 0 for little-endian machine, 1 for big-endian.

Stable:
ICU 2.0

Definition at line 84 of file udata.h.

uint8_t UDataInfo::reservedByte
 

@memo unused, set to 0.

Stable:
ICU 2.0

Definition at line 96 of file udata.h.

uint16_t UDataInfo::reservedWord
 

@memo unused, set to 0.

Stable:
ICU 2.0

Definition at line 79 of file udata.h.

uint16_t UDataInfo::size
 

@memo sizeof(UDataInfo).

Stable:
ICU 2.0

Definition at line 75 of file udata.h.

uint8_t UDataInfo::sizeofUChar
 

@memo sizeof(UChar), one of { 1, 2, 4 }.

Stable:
ICU 2.0

Definition at line 92 of file udata.h.


The documentation for this struct was generated from the following file:
Generated on Mon Nov 24 14:37:00 2003 for ICU 2.8 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001