ATS_timer.h
1.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
Copyright Wang yong ALL RIGHT RESERVED !
@ file name: ATS_timer.h
@ description: 定时器接口文件
@ Author: wangyong, doforfaith@gmail.com
@ Modify History:
Date Event Person
10-05-31 Creator wangyong
*/
#if defined(__SKY_3DGUI__)
#ifndef __ATS_TIMER_H__
#define __ATS_TIMER_H__
#include "ATS_basic.h"
#include "ATS_adaptation_features.h"
typedef void (*ATS_TIMER_CALLBACK)(void);
typedef void (*ATS_TIMER_CALLBACK_EXT)(void* param);
/*
对于timer 的支持,分为三类:
@ ATS_timer_start 与ATS_timer_stop :
@ 这类timer,屏灭后仍然会运行,准确性较低
对于实时性要求高的情况可以选择使用,
但由于它在屏灭后依然运行,因此,对于
能耗较大的处理不适宜,比如需要大面积的
屏幕刷新操作
@ATS_timer_gui_start 和ATS_timer_gui_stop
@另一类是gui timer,屏灭后停止,屏幕再次点亮后启动,准确性较高
对于对定时准确性较高要求或需要大面积的
屏幕刷新操作的情况可选择使用
@ATS_timer_gui_start_ext 和ATS_timer_gui_stop_ext
与ATS_timer_gui_start 和ATS_timer_gui_stop 类似
差别在于该类timer 的回调函数允许传入参数
*/
extern void ATS_timer_start(ats_uint32 duration, ATS_TIMER_CALLBACK cb);
extern void ATS_timer_stop(ATS_TIMER_CALLBACK cb);
extern void ATS_timer_gui_start(ats_uint32 duration, ATS_TIMER_CALLBACK cb);
extern void ATS_timer_gui_stop(ATS_TIMER_CALLBACK cb);
extern void ATS_timer_gui_start_ext(ats_uint32 duration, ATS_TIMER_CALLBACK_EXT cb, void* param);
extern void ATS_timer_gui_stop_ext(ATS_TIMER_CALLBACK_EXT cb);
#endif /*__ATS_TIMER_H__*/
#endif /*__SKY_3DGUI__*/