1/*
2 *******************************************************************************
3 *
4 *   Copyright (C) 1999-2014, International Business Machines
5 *   Corporation and others.  All Rights Reserved.
6 *
7 *******************************************************************************
8 *   file name:  letest.h
9 *
10 *   created on: 11/06/2000
11 *   created by: Eric R. Mader
12 */
13
14#ifndef __LETEST_H
15#define __LETEST_H
16
17
18#ifdef USING_ICULEHB
19#include "layout/LETypes.h"
20#else
21#include "LETypes.h"
22#endif
23#include "unicode/ctest.h"
24
25#include <stdlib.h>
26#include <string.h>
27
28U_NAMESPACE_USE
29
30#define ARRAY_SIZE(array) (sizeof array / sizeof array[0])
31
32#define ARRAY_COPY(dst, src, count) memcpy((void *) (dst), (void *) (src), (count) * sizeof (src)[0])
33
34#define NEW_ARRAY(type,count) (type *) malloc((count) * sizeof(type))
35
36#define DELETE_ARRAY(array) free((void *) (array))
37
38#define GROW_ARRAY(array,newSize) realloc((void *) (array), (newSize) * sizeof (array)[0])
39
40struct TestResult
41{
42    le_int32   glyphCount;
43    LEGlyphID *glyphs;
44    le_int32  *indices;
45    float     *positions;
46};
47
48#ifndef __cplusplus
49typedef struct TestResult TestResult;
50#endif
51
52U_CFUNC void addCTests(TestNode **root);
53
54#endif
55