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 void draw(); 00046 virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask); 00047 00048 const LLString& getLabel() const; 00049 void setLabel(const LLString& label); 00050 void setUnitLabel(const LLString& unit_label); 00051 /*virtual*/ LLRect getRequiredRect(); // Return the height of this object, given the set options. 00052 00053 F32 mMinBar; 00054 F32 mMaxBar; 00055 F32 mTickSpacing; 00056 F32 mLabelSpacing; 00057 U32 mPrecision; 00058 BOOL mPerSec; // Use the per sec stats. 00059 BOOL mDisplayBar; // Display the bar graph. 00060 BOOL mDisplayHistory; 00061 BOOL mDisplayMean; // If true, display mean, if false, display current value 00062 00063 F32 mUpdatesPerSec; 00064 LLStat *mStatp; 00065 private: 00066 LLFrameTimer mUpdateTimer; 00067 LLString mLabel; 00068 LLString mUnitLabel; 00069 F32 mValue; 00070 }; 00071 00072 #endif