ReactOS  0.4.13-dev-982-g9853eab
rosperf.h
Go to the documentation of this file.
1 /*
2  * ReactOS RosPerf - ReactOS GUI performance test program
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17  */
18 
19 #ifndef ROSPERF_H_INCLUDED
20 #define ROSPERF_H_INCLUDED
21 
22 typedef struct tagPERF_INFO
23 {
25  unsigned Seconds;
26  unsigned Repeats;
34 
35 typedef unsigned (*INITTESTPROC)(void **Context, PPERF_INFO PerfInfo, unsigned Reps);
36 typedef void (*TESTPROC)(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
37 typedef void (*CLEANUPTESTPROC)(void *Context, PPERF_INFO PerfInfo);
38 
39 typedef struct tagTEST
40 {
47 } TEST, *PTEST;
48 
49 void GetTests(unsigned *TestCount, PTEST *Tests);
50 
51 /* Tests */
52 unsigned NullInit(void **Context, PPERF_INFO PerfInfo, unsigned Reps);
53 void NullCleanup(void *Context, PPERF_INFO PerfInfo);
54 
55 void FillProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
56 void FillSmallProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
57 
58 void LinesHorizontalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
59 void LinesVerticalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
60 void LinesProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
61 
62 void TextProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
63 
64 unsigned AlphaBlendInit(void **Context, PPERF_INFO PerfInfo, unsigned Reps);
65 void AlphaBlendCleanup(void *Context, PPERF_INFO PerfInfo);
66 void AlphaBlendProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
67 
68 void GradientHorizontalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
69 void GradientVerticalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
70 void GradientProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
71 
72 void ScrollProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps);
73 
74 #endif /* ROSPERF_H_INCLUDED */
75 
76 /* EOF */
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
Definition: typeof.h:49
CLEANUPTESTPROC PassCleanup
Definition: rosperf.h:45
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
HWND Wnd
Definition: rosperf.h:24
CLEANUPTESTPROC Cleanup
Definition: rosperf.h:46
unsigned NullInit(void **Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: rosperf.c:56
static HDC
Definition: imagelist.c:92
void LinesVerticalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: lines.c:79
void FillSmallProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: fill.c:35
HDC BackgroundDc
Definition: rosperf.h:30
INT WndHeight
Definition: rosperf.h:32
TESTPROC Proc
Definition: rosperf.h:44
void GradientVerticalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: gradient.c:126
void ScrollProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: scroll.c:23
int32_t INT
Definition: typedefs.h:56
void LinesHorizontalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: lines.c:60
struct tagPERF_INFO * PPERF_INFO
struct tagPERF_INFO PERF_INFO
unsigned AlphaBlendInit(void **Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: alphablend.c:29
COLORREF ForegroundColor
Definition: rosperf.h:27
void(* CLEANUPTESTPROC)(void *Context, PPERF_INFO PerfInfo)
Definition: rosperf.h:37
DWORD COLORREF
Definition: windef.h:285
void TextProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: text.c:23
void GradientProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: gradient.c:25
struct tagTEST * PTEST
LPCWSTR Label
Definition: rosperf.h:42
unsigned Repeats
Definition: rosperf.h:26
void LinesProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: lines.c:23
LPCWSTR Option
Definition: rosperf.h:41
void AlphaBlendCleanup(void *Context, PPERF_INFO PerfInfo)
Definition: alphablend.c:52
void AlphaBlendProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: alphablend.c:67
void FillProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: fill.c:23
COLORREF BackgroundColor
Definition: rosperf.h:28
void GradientHorizontalProc(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: gradient.c:97
HDC ForegroundDc
Definition: rosperf.h:29
struct tagContext Context
Definition: acpixf.h:1012
void GetTests(unsigned *TestCount, PTEST *Tests)
Definition: testlist.c:39
void(* TESTPROC)(void *Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: rosperf.h:36
unsigned(* INITTESTPROC)(void **Context, PPERF_INFO PerfInfo, unsigned Reps)
Definition: rosperf.h:35
struct test_data Tests[]
unsigned Seconds
Definition: rosperf.h:25
struct tagTEST TEST
void NullCleanup(void *Context, PPERF_INFO PerfInfo)
Definition: rosperf.c:64
INT WndWidth
Definition: rosperf.h:31
INITTESTPROC Init
Definition: rosperf.h:43