00001 00088 //-------------------------------------------------------------------------------------------------- 00098 #ifndef LEGATO_TIMER_INCLUDE_GUARD 00099 #define LEGATO_TIMER_INCLUDE_GUARD 00100 00101 00102 //-------------------------------------------------------------------------------------------------- 00106 //-------------------------------------------------------------------------------------------------- 00107 typedef struct le_timer* le_timer_Ref_t; 00108 00109 00110 //-------------------------------------------------------------------------------------------------- 00117 //-------------------------------------------------------------------------------------------------- 00118 typedef void (*le_timer_ExpiryHandler_t) 00119 ( 00120 le_timer_Ref_t timerRef 00121 ); 00122 00123 00124 //-------------------------------------------------------------------------------------------------- 00131 //-------------------------------------------------------------------------------------------------- 00132 le_timer_Ref_t le_timer_Create 00133 ( 00134 const char* nameStr 00135 ); 00136 00137 00138 //-------------------------------------------------------------------------------------------------- 00145 //-------------------------------------------------------------------------------------------------- 00146 void le_timer_Delete 00147 ( 00148 le_timer_Ref_t timerRef 00149 ); 00150 00151 00152 //-------------------------------------------------------------------------------------------------- 00165 //-------------------------------------------------------------------------------------------------- 00166 le_result_t le_timer_SetHandler 00167 ( 00168 le_timer_Ref_t timerRef, 00169 le_timer_ExpiryHandler_t handlerRef 00170 ); 00171 00172 00173 //-------------------------------------------------------------------------------------------------- 00186 //-------------------------------------------------------------------------------------------------- 00187 le_result_t le_timer_SetInterval 00188 ( 00189 le_timer_Ref_t timerRef, 00190 le_clk_Time_t interval 00191 ); 00192 00193 00194 //-------------------------------------------------------------------------------------------------- 00208 //-------------------------------------------------------------------------------------------------- 00209 le_result_t le_timer_SetRepeat 00210 ( 00211 le_timer_Ref_t timerRef, 00212 uint32_t repeatCount 00213 ); 00214 00215 00216 //-------------------------------------------------------------------------------------------------- 00229 //-------------------------------------------------------------------------------------------------- 00230 le_result_t le_timer_SetContextPtr 00231 ( 00232 le_timer_Ref_t timerRef, 00233 void* contextPtr 00234 ); 00235 00236 00237 //-------------------------------------------------------------------------------------------------- 00249 //-------------------------------------------------------------------------------------------------- 00250 void* le_timer_GetContextPtr 00251 ( 00252 le_timer_Ref_t timerRef 00253 ); 00254 00255 00256 //-------------------------------------------------------------------------------------------------- 00269 //-------------------------------------------------------------------------------------------------- 00270 uint32_t le_timer_GetExpiryCount 00271 ( 00272 le_timer_Ref_t timerRef 00273 ); 00274 00275 00276 //-------------------------------------------------------------------------------------------------- 00289 //-------------------------------------------------------------------------------------------------- 00290 le_result_t le_timer_Start 00291 ( 00292 le_timer_Ref_t timerRef 00293 ); 00294 00295 00296 //-------------------------------------------------------------------------------------------------- 00309 //-------------------------------------------------------------------------------------------------- 00310 le_result_t le_timer_Stop 00311 ( 00312 le_timer_Ref_t timerRef 00313 ); 00314 00315 00316 //-------------------------------------------------------------------------------------------------- 00326 //-------------------------------------------------------------------------------------------------- 00327 void le_timer_Restart 00328 ( 00329 le_timer_Ref_t timerRef 00330 ); 00331 00332 00333 //-------------------------------------------------------------------------------------------------- 00340 //-------------------------------------------------------------------------------------------------- 00341 bool le_timer_IsRunning 00342 ( 00343 le_timer_Ref_t timerRef 00344 ); 00345 00346 00347 #endif // LEGATO_TIMER_INCLUDE_GUARD 00348