38 lines
658 B
C
38 lines
658 B
C
|
#ifndef ECORETIMER_H
|
||
|
#define ECORETIMER_H
|
||
|
|
||
|
/* EFLxx */
|
||
|
#include <eflxx/eflpp_common.h>
|
||
|
|
||
|
/* EFL */
|
||
|
#include <Ecore.h>
|
||
|
|
||
|
namespace efl {
|
||
|
|
||
|
class EcoreTimer
|
||
|
{
|
||
|
typedef sigc::signal<void,EcoreTimer*> Signal;
|
||
|
typedef sigc::slot1<void,EcoreTimer*> Slot;
|
||
|
|
||
|
public:
|
||
|
EcoreTimer( double seconds, bool singleshot = false );
|
||
|
virtual ~EcoreTimer();
|
||
|
|
||
|
virtual void tick();
|
||
|
void setInterval( double );
|
||
|
|
||
|
static EcoreTimer* singleShot( double seconds, const EcoreTimer::Slot& );
|
||
|
|
||
|
public: /* signals */
|
||
|
EcoreTimer::Signal timeout;
|
||
|
|
||
|
private:
|
||
|
Ecore_Timer* _et;
|
||
|
bool _ss;
|
||
|
|
||
|
static int __dispatcher( void* data );
|
||
|
};
|
||
|
|
||
|
} // end namespace efl
|
||
|
|
||
|
#endif // ECORETIMER_H
|