00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef _C_LOGPROTOCOLSTATCONTROL_H
00021 #define _C_LOGPROTOCOLSTATCONTROL_H
00022 
00023 #include "C_SemaphoreTimed.hpp"
00024 #include "C_ProtocolStatsFrame.hpp"
00025 #include "C_TaskControl.hpp"
00026 #include "string_t.hpp"
00027 
00028 
00029 class C_LogProtocolStatControl : public C_TaskControl {
00030 
00031  public:
00032 
00033   C_LogProtocolStatControl(C_ProtocolStatsFrame *P_stats) ;
00034   ~C_LogProtocolStatControl() ;
00035 
00036   void  init (unsigned long P_period, string_t& P_fileName);
00037   void  reset_cumul_counters ();
00038 
00039   private :
00040 
00041     C_ProtocolStatsFrame *m_stat;
00042     C_SemaphoreTimed     *m_sem ;
00043 
00044     T_GeneratorError TaskProcedure () ;
00045     T_GeneratorError InitProcedure () ;
00046     T_GeneratorError EndProcedure () ;
00047     T_GeneratorError StoppingProcedure () ;
00048     T_GeneratorError ForcedStoppingProcedure () ;
00049 
00050 } ;
00051 
00052 #endif // _C_LOGPROTOCOLSTATCONTROL_H
00053 
00054