6
#include <time.h> /* for clock() */
8
/* SunOS 4.1.* does not define CLOCKS_PER_SEC, so include <sys/param.h> */
9
/* to get the HZ macro which is the equivalent. */
10
#if defined(__sun__) && !defined(SVR4) && !defined(__SVR4)
11
#include <sys/param.h>
12
#define CLOCKS_PER_SEC HZ
18
return clock() * 10000L / CLOCKS_PER_SEC;
24
/* test bbox computations */
27
#define XX(x) ((FT_Pos)(x*XSCALE))
28
#define XVEC(x,y) { XX(x), XX(y) }
29
#define XVAL(x) ((x)/(1.0*XSCALE))
31
/* dummy outline #1 */
32
static FT_Vector dummy_vec_1[4] =
35
XVEC( 408.9111, 535.3164 ),
36
XVEC( 455.8887, 634.396 ),
37
XVEC( -37.8765, 786.2207 ),
38
XVEC( 164.6074, 535.3164 )
40
{ (FT_Int32)0x0198E93DL , (FT_Int32)0x021750FFL }, /* 408.9111, 535.3164 */
41
{ (FT_Int32)0x01C7E312L , (FT_Int32)0x027A6560L }, /* 455.8887, 634.3960 */
42
{ (FT_Int32)0xFFDA1F9EL , (FT_Int32)0x0312387FL }, /* -37.8765, 786.2207 */
43
{ (FT_Int32)0x00A49B7EL , (FT_Int32)0x021750FFL } /* 164.6074, 535.3164 */
47
static char dummy_tag_1[4] =
55
static short dummy_contour_1[1] =
60
static FT_Outline dummy_outline_1 =
71
/* dummy outline #2 */
72
static FT_Vector dummy_vec_2[4] =
80
static FT_Outline dummy_outline_2 =
92
dump_outline( FT_Outline* outline )
96
/* compute and display cbox */
97
FT_Outline_Get_CBox( outline, &bbox );
98
printf( "cbox = [%.2f %.2f %.2f %.2f]\n",
104
/* compute and display bbox */
105
FT_Outline_Get_BBox( outline, &bbox );
106
printf( "bbox = [%.2f %.2f %.2f %.2f]\n",
116
profile_outline( FT_Outline* outline,
124
for ( count = repeat; count > 0; count-- )
125
FT_Outline_Get_CBox( outline, &bbox );
127
time0 = get_time() - time0;
128
printf( "time = %5.2f cbox = [%.2f %.2f %.2f %.2f]\n",
129
((double)time0/10000.0),
137
for ( count = repeat; count > 0; count-- )
138
FT_Outline_Get_BBox( outline, &bbox );
140
time0 = get_time() - time0;
141
printf( "time = %5.2f bbox = [%.2f %.2f %.2f %.2f]\n",
142
((double)time0/10000.0),
149
#define REPEAT 100000L
151
int main( int argc, char** argv )
153
printf( "outline #1\n" );
154
profile_outline( &dummy_outline_1, REPEAT );
156
printf( "outline #2\n" );
157
profile_outline( &dummy_outline_2, REPEAT );