00001 00032 #ifndef LL_LLSTATBAR_H 00033 #define LL_LLSTATBAR_H 00034 00035 #include "llview.h" 00036 #include "llframetimer.h" 00037 00038 class LLStat; 00039 00040 class LLStatBar : public LLView 00041 { 00042 public: 00043 LLStatBar(const std::string& name, const LLRect& rect); 00044 00045 virtual EWidgetType getWidgetType() const; 00046 virtual LLString getWidgetTag() const; 00047 00048 virtual void draw(); 00049 virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask); 00050 00051 const LLString& getLabel() const; 00052 void setLabel(const LLString& label); 00053 void setUnitLabel(const LLString& unit_label); 00054 /*virtual*/ LLRect getRequiredRect(); // Return the height of this object, given the set options. 00055 00056 F32 mMinBar; 00057 F32 mMaxBar; 00058 F32 mTickSpacing; 00059 F32 mLabelSpacing; 00060 U32 mPrecision; 00061 BOOL mPerSec; // Use the per sec stats. 00062 BOOL mDisplayBar; // Display the bar graph. 00063 BOOL mDisplayHistory; 00064 BOOL mDisplayMean; // If true, display mean, if false, display current value 00065 00066 F32 mUpdatesPerSec; 00067 LLStat *mStatp; 00068 private: 00069 LLFrameTimer mUpdateTimer; 00070 LLString mLabel; 00071 LLString mUnitLabel; 00072 F32 mValue; 00073 }; 00074 00075 #endif