tdecore
tdecpudevice.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _TDECPUDEVICE_H
00021 #define _TDECPUDEVICE_H
00022
00023 #include "tdegenericdevice.h"
00024
00025 class TDECORE_EXPORT TDECPUDevice : public TDEGenericDevice
00026 {
00027 public:
00032 TDECPUDevice(TDEGenericDeviceType::TDEGenericDeviceType dt, TQString dn=TQString::null);
00033
00037 ~TDECPUDevice();
00038
00042 double frequency();
00043
00047 double minFrequency();
00048
00052 double maxFrequency();
00053
00057 double transitionLatency();
00058
00062 TQString governor();
00063
00067 TQString scalingDriver();
00068
00072 TQStringList dependentProcessors();
00073
00077 TQStringList availableFrequencies();
00078
00082 TQStringList availableGovernors();
00083
00087 bool canSetGovernor();
00088
00092 void setGovernor(TQString gv);
00093
00097 bool canSetMaximumScalingFrequency();
00098
00102 void setMaximumScalingFrequency(double fr);
00103
00107 int coreNumber();
00108
00109 protected:
00114 void internalSetFrequency(double fr);
00115
00120 void internalSetMinFrequency(double fr);
00121
00126 void internalSetMaxFrequency(double fr);
00127
00132 void internalSetTransitionLatency(double tl);
00133
00138 void internalSetGovernor(TQString gr);
00139
00144 void internalSetScalingDriver(TQString dr);
00145
00150 void internalSetDependentProcessors(TQStringList dp);
00151
00156 void internalSetAvailableFrequencies(TQStringList af);
00157
00162 void internalSetAvailableGovernors(TQStringList gp);
00163
00168 void internalSetCoreNumber(int cn);
00169
00170 private:
00171 double m_frequency;
00172 double m_minfrequency;
00173 double m_maxfrequency;
00174 double m_transitionlatency;
00175 TQString m_governor;
00176 TQString m_scalingdriver;
00177 TQStringList m_tiedprocs;
00178 TQStringList m_frequencies;
00179 TQStringList m_governers;
00180 int m_corenumber;
00181
00182 friend class TDEHardwareDevices;
00183 };
00184
00185
00186 #endif // _TDECPUDEVICE_H