void
etRunner::work()
{
- /* give a turn to deal with deferred job for E_TEST_WORK_TIME */
- worker.timer = ecore_timer_add(worker.waitTime,
- _cb_work_timeout,
- this);
+ /* give a turn to deal with deferred job for given time*/
+ addTimer(worker.waitTime);
+ elm_run();
+}
+
+void
+etRunner::work(double time)
+{
+ /* give a turn to deal with deferred job for given time*/
+ if (time < 0.0) time = 0.0;
+
+ addTimer(time);
elm_run();
}
etRunner::finishWork()
{
if (worker.timer)
- {
- ecore_timer_del(worker.timer);
- worker.timer = NULL;
- }
+ delTimer();
elm_exit();
}
}
void
-etRunner::waitForDestroy()
+etRunner::addTimer(double time)
{
- setWaitTime(E_TEST_WORK_TIME);
- addTimer();
+ delTimer();
- elm_run();
+ worker.timer = ecore_timer_add(time,
+ _cb_work_timeout,
+ this);
+}
+
+void
+etRunner::waitForDestroy()
+{
+ work(E_TEST_WORK_TIME);
}
Eina_Bool
Eina_Bool init();
void shutdown();
void work();
+ void work(double time);
void finishWork();
void printWinInfoList();
void setWaitTime(double time) { worker.waitTime = time; };
void delTimer();
void addTimer();
+ void addTimer(double time);
void waitForDestroy();
Eina_Bool registerWin(etWin *tw);