00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _logging_advocate_hh
00019 #define _logging_advocate_hh
00020
00021 #include <iostream>
00022
00023 #include <RealTimeTaskDelegateImpl.hh>
00024
00025
00026
00027
00028
00029 class LoggingAdvocate : public virtual RealTimeTaskDelegateImpl
00030 {
00031
00032 public:
00033
00034 LoggingAdvocate(void);
00035
00036 virtual ~LoggingAdvocate(void);
00037
00038 virtual void SetDelegateAttribute(const char *id,
00039 const CORBA::Any &value)
00040 throw (CORBA::SystemException);
00041
00042 virtual void ReportCPU(Broker::RealTimeTask_ptr rtt,
00043 CORBA::ULong status,
00044 CORBA::ULong advice)
00045 throw (CORBA::SystemException);
00046
00047 protected:
00048
00049
00050
00051
00052 struct timeval eta_StartTime;
00053
00054
00055
00056
00057 struct timeval eta_LastCPULog;
00058
00059
00060
00061
00062 ofstream *eta_CPULog;
00063
00064
00065
00066
00067 struct timeval eta_LastAdviceLog;
00068
00069
00070
00071
00072 ofstream *eta_AdviceLog;
00073
00074
00075
00076
00077 ofstream *eta_CompleteLog;
00078
00079 };
00080
00081 #endif