eapol/eapol_framework/eapol_common/include/eap_timer_queue.h
changeset 49 43351a4f2da3
parent 26 9abfd4f00d37
equal deleted inserted replaced
47:712b4ffd76bb 49:43351a4f2da3
    24 
    24 
    25 //#include "eap_am_memory.h"
    25 //#include "eap_am_memory.h"
    26 #include "eap_am_tools.h"
    26 #include "eap_am_tools.h"
    27 #include "eap_tools.h"
    27 #include "eap_tools.h"
    28 #include "abs_eap_am_mutex.h"
    28 #include "abs_eap_am_mutex.h"
       
    29 #include "eap_am_export.h"
       
    30 // Start: added by script change_export_macros.sh.
       
    31 #if defined(EAP_NO_EXPORT_EAP_TIMER_QUEUE_H)
       
    32 	#define EAP_CLASS_VISIBILITY_EAP_TIMER_QUEUE_H EAP_NONSHARABLE 
       
    33 	#define EAP_FUNC_VISIBILITY_EAP_TIMER_QUEUE_H 
       
    34 	#define EAP_C_FUNC_VISIBILITY_EAP_TIMER_QUEUE_H 
       
    35 	#define EAP_FUNC_EXPORT_EAP_TIMER_QUEUE_H 
       
    36 	#define EAP_C_FUNC_EXPORT_EAP_TIMER_QUEUE_H 
       
    37 #elif defined(EAP_EXPORT_EAP_TIMER_QUEUE_H)
       
    38 	#define EAP_CLASS_VISIBILITY_EAP_TIMER_QUEUE_H EAP_EXPORT 
       
    39 	#define EAP_FUNC_VISIBILITY_EAP_TIMER_QUEUE_H EAP_FUNC_EXPORT 
       
    40 	#define EAP_C_FUNC_VISIBILITY_EAP_TIMER_QUEUE_H EAP_C_FUNC_EXPORT 
       
    41 	#define EAP_FUNC_EXPORT_EAP_TIMER_QUEUE_H EAP_FUNC_EXPORT 
       
    42 	#define EAP_C_FUNC_EXPORT_EAP_TIMER_QUEUE_H EAP_C_FUNC_EXPORT 
       
    43 #else
       
    44 	#define EAP_CLASS_VISIBILITY_EAP_TIMER_QUEUE_H EAP_IMPORT 
       
    45 	#define EAP_FUNC_VISIBILITY_EAP_TIMER_QUEUE_H EAP_FUNC_IMPORT 
       
    46 	#define EAP_C_FUNC_VISIBILITY_EAP_TIMER_QUEUE_H EAP_C_FUNC_IMPORT 
       
    47 	#define EAP_FUNC_EXPORT_EAP_TIMER_QUEUE_H 
       
    48 	#define EAP_C_FUNC_EXPORT_EAP_TIMER_QUEUE_H 
       
    49 #endif
       
    50 // End: added by script change_export_macros.sh.
       
    51 
    29 
    52 
    30 
    53 
    31 /** @file */
    54 /** @file */
    32 
    55 
    33 const u32_t EAP_TIMER_RESOLUTION  = 500u; ///< Timer resolution in milli seconds.
    56 const u32_t EAP_TIMER_RESOLUTION  = 500u; ///< Timer resolution in milli seconds.
    37 class eap_timer_queue_hash_c;
    60 class eap_timer_queue_hash_c;
    38 
    61 
    39 // ---------------------------------------------------------------------
    62 // ---------------------------------------------------------------------
    40 
    63 
    41 /// This class is one timer event stored to timer queue.
    64 /// This class is one timer event stored to timer queue.
    42 class EAP_EXPORT eap_timer_queue_event_c
    65 class EAP_CLASS_VISIBILITY_EAP_TIMER_QUEUE_H eap_timer_queue_event_c
    43 {
    66 {
    44 private:
    67 private:
    45 	//--------------------------------------------------
    68 	//--------------------------------------------------
    46 
    69 
    47 	abs_eap_am_tools_c * const m_am_tools;
    70 	abs_eap_am_tools_c * const m_am_tools;
   189 /// This class is hash to timer event stored to timer queue.
   212 /// This class is hash to timer event stored to timer queue.
   190 /**
   213 /**
   191  * Each timer event is stored to the timer queue (eap_timer_queue_c) with events (eap_timer_queue_event_c)
   214  * Each timer event is stored to the timer queue (eap_timer_queue_c) with events (eap_timer_queue_event_c)
   192  * and to the hash array of the timer events (eap_timer_queue_c::m_map).
   215  * and to the hash array of the timer events (eap_timer_queue_c::m_map).
   193  */
   216  */
   194 class EAP_EXPORT eap_timer_queue_hash_c
   217 class EAP_CLASS_VISIBILITY_EAP_TIMER_QUEUE_H eap_timer_queue_hash_c
   195 {
   218 {
   196 private:
   219 private:
   197 	//--------------------------------------------------
   220 	//--------------------------------------------------
   198 
   221 
   199 	abs_eap_am_tools_c * const m_am_tools;
   222 	abs_eap_am_tools_c * const m_am_tools;
   309  *                                     | m_time_ms 0   |                   
   332  *                                     | m_time_ms 0   |                   
   310  *                                     +---------------+                   
   333  *                                     +---------------+                   
   311  *   // Each vertical list includes the timer events that have the same time.
   334  *   // Each vertical list includes the timer events that have the same time.
   312  * @endcode
   335  * @endcode
   313  */
   336  */
   314 class EAP_EXPORT eap_timer_queue_c
   337 class EAP_CLASS_VISIBILITY_EAP_TIMER_QUEUE_H eap_timer_queue_c
   315 {
   338 {
   316 private:
   339 private:
   317 	//--------------------------------------------------
   340 	//--------------------------------------------------
   318 
   341 
   319 	/// This is pointer to the tools class.
   342 	/// This is pointer to the tools class.