Home | History | Annotate | Download | only in unicode

Lines Matching full:data

27  * \brief C API: Data loading interface
29 * <h2>Information about data loading interface</h2>
31 * This API is used to find and efficiently load data for ICU and applications
32 * using ICU. It provides an abstract interface that specifies a data type and
33 * name to find and load the data. Normally this API is used by other ICU APIs
34 * to load required data out of the ICU data library, but it can be used to
35 * load data out of other places.
37 * See the User Guide Data Management chapter.
66 * Alias for standard ICU data
74 * UDataInfo contains the properties about the requested data.
75 * This is meta data.
80 * <p>The platform data property fields help determine if a data
82 * The particular fields are of importance only if the data
83 * is affected by the properties - if there is integer data
87 * functions may reject data based on the value in <code>isBigEndian</code>.
91 * the kind of data, e.g. a converter table.</p>
96 * of the version elements to allow the data memory to
101 * common place to store the source version of the data;
102 * for data from the Unicode character database, this could
115 /* platform data properties */
132 /** data format identifier
145 /* API for reading data -----------------------------------------------------*/
148 * Forward declaration of the data memory type.
156 * @param type The type of the data as passed into <code>udata_openChoice()</code>.
158 * @param name The name of the data as passed into <code>udata_openChoice()</code>.
160 * of data that has been loaded and will be returned
163 * @return TRUE if the current data memory is acceptable
175 * except that any data that matches the type and name
178 * finding of the data in the file system.
179 * <code>NULL</code> for ICU data.
180 * @param type A string that specifies the type of data to be loaded.
184 * @param name A string that specifies the name of the data.
186 * @return A pointer (handle) to a data memory object, or <code>NULL</code>
188 * to get a pointer to the actual data.
198 * Data loading function.
199 * This function is used to find and load efficiently data for
201 * It provides an abstract interface that allows to specify a data
202 * type and name to find and load the data.
208 * Several or all data items may be combined into one entity
211 * <p>The data is always preceded by a header that includes
214 * sure that the data is useful. It may be called several times if it
215 * rejects the data and there is more than one location with data
218 * <p>If <code>path==NULL</code>, then ICU data is loaded.
220 * The basename is used as the data package name, and the directory is
221 * logically prepended to the ICU data directory string.</p>
223 * <p>For details about ICU data loading see the User Guide
224 * Data Management chapter. (http://icu-project.org/userguide/icudata.html)</p>
227 * finding of the data in the file system.
228 * <code>NULL</code> for ICU data.
229 * @param type A string that specifies the type of data to be loaded.
233 * @param name A string that specifies the name of the data.
234 * @param isAcceptable This function is called to verify that loaded data
236 * for all data items, then <code>udata_openChoice()</code>
240 * @return A pointer (handle) to a data memory object, or <code>NULL</code>
242 * to get a pointer to the actual data.
251 * Close the data memory.
253 * release resources associated with this data memory.
254 * @param pData The pointer to data memory object
280 * Get the pointer to the actual data inside the data memory.
281 * The data is read-only.
282 * @param pData The pointer to data memory object
289 * Get the information from the data memory header.
291 * platform data properties etc. which is not part of
292 * the data itself and can therefore not be accessed
295 * @param pData pointer to the data memory object
301 * in the data memory object. If this structure is smaller than
310 * This function bypasses the normal ICU data loading process and
311 * allows you to force ICU's system data to come out of a user-specified
314 * The format of this data is that of the icu common data file, as is
317 * data, or (with the appropriate link options) pass in the pointer to
318 * the data that has been loaded from a dll by the operating system,
330 * Starting with ICU 4.4, it is possible to set several data packages,
332 * udata_open() will look for data in the multiple data packages in the order
334 * The position of the linked-in or default-name ICU .data package in the
335 * search list depends on when the first data item is loaded that is not contained
337 * If data was loaded implicitly before the first call to this function
339 * from default-codepage data, using formatting or collation APIs, etc.),
340 * then the default data will be first in the list.
342 * This function has no effect on application (non ICU) data. See udata_setAppData()
343 * for similar functionality for application data.
345 * @param data pointer to ICU common data
350 udata_setCommonData(const void *data, UErrorCode *err);
354 * This function bypasses the normal ICU data loading process for application-specific
355 * data and allows you to force the it to come out of a user-specified
358 * The format of this data is that of the icu common data file, like 'icudt26l.dat'
360 * The application must read in or otherwise construct an image of the data and then
365 * data with the specifed path that has already been opened, or
371 * to (open) this data
372 * @param data pointer to the data
378 udata_setAppData(const char *packageName, const void *data, UErrorCode *err);
386 /** ICU looks for data in single files first, then in packages. (default) @stable ICU 3.4 */
390 /** ICU only loads data from packages, not from single files. @stable ICU 3.4 */
392 /** ICU loads data from packages first, and only from single files
393 if the data cannot be found in a package. @stable ICU 3.4 */
395 /** ICU does not access the file system for data loading. @stable ICU 3.4 */
402 * This function may be called to control how ICU loads data. It must be called
403 * before any ICU data is loaded, including application data loaded with
405 * The results of calling it while other threads are loading data are undefined.