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