ATS_timer.h 1.49 KB
/*
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__*/