#include <QmitkMemoryUsageIndicatorView.h>


Public Member Functions | |
| QmitkMemoryUsageIndicatorView (QWidget *parent=0, Qt::WindowFlags f=0) | |
| constructor | |
| ~QmitkMemoryUsageIndicatorView () | |
| destructor | |
Protected Slots | |
| void | UpdateMemoryUsage () |
Protected Member Functions | |
| std::string | FormatMemorySize (vcl_size_t size) |
| std::string | FormatPercentage (double val) |
| std::string | GetMemoryDescription (vcl_size_t processSize, float percentage) |
Protected Attributes | |
| QPixmap | m_LEDGreen |
| QPixmap | m_LEDYellow |
| QPixmap | m_LEDOrange |
| QPixmap | m_LEDRed |
| char | m_PreviousState |
Definition at line 25 of file QmitkMemoryUsageIndicatorView.h.
| QmitkMemoryUsageIndicatorView::QmitkMemoryUsageIndicatorView | ( | QWidget * | parent = 0, |
| Qt::WindowFlags | f = 0 |
||
| ) |
constructor
Definition at line 48 of file QmitkMemoryUsageIndicatorView.cpp.
References Ui_QmitkMemoryUsageIndicator::m_LED, m_LEDGreen, m_LEDOrange, m_LEDRed, m_LEDYellow, m_PreviousState, Ui_QmitkMemoryUsageIndicator::setupUi(), and UpdateMemoryUsage().
{
this->setupUi(this);
QTimer *timer = new QTimer( this );
QObject::connect( timer, SIGNAL( timeout() ), this, SLOT( UpdateMemoryUsage() ) );
timer->start(1000);
m_LEDGreen = QmitkMemoryUsageIndicatorImagesGreen_xpm;
m_LEDYellow = QmitkMemoryUsageIndicatorImagesYellow_xpm;
m_LEDOrange = QmitkMemoryUsageIndicatorImagesOrange_xpm;
m_LEDRed = QmitkMemoryUsageIndicatorImagesRed_xpm;
m_LED->setPixmap(m_LEDGreen);
m_PreviousState = 0;
}
| QmitkMemoryUsageIndicatorView::~QmitkMemoryUsageIndicatorView | ( | ) |
| std::string QmitkMemoryUsageIndicatorView::FormatMemorySize | ( | vcl_size_t | size ) | [protected] |
Definition at line 112 of file QmitkMemoryUsageIndicatorView.cpp.
Referenced by GetMemoryDescription().
{
double val = size;
std::string descriptor("B");
if ( val >= 1000.0 )
{
val /= 1024.0;
descriptor = "KB";
}
if ( val >= 1000.0 )
{
val /= 1024.0;
descriptor = "MB";
}
if ( val >= 1000.0 )
{
val /= 1024.0;
descriptor = "GB";
}
std::ostringstream str;
str << std::fixed << std::setprecision(2) << val << " " << descriptor;
return str.str();
}
| std::string QmitkMemoryUsageIndicatorView::FormatPercentage | ( | double | val ) | [protected] |
Definition at line 136 of file QmitkMemoryUsageIndicatorView.cpp.
Referenced by GetMemoryDescription().
{
std::ostringstream str;
str << std::fixed << std::setprecision(2) << val << " " << "%";
return str.str();
}
| std::string QmitkMemoryUsageIndicatorView::GetMemoryDescription | ( | vcl_size_t | processSize, |
| float | percentage | ||
| ) | [protected] |
Definition at line 143 of file QmitkMemoryUsageIndicatorView.cpp.
References FormatMemorySize(), and FormatPercentage().
Referenced by UpdateMemoryUsage().
{
std::ostringstream str;
str << FormatMemorySize(processSize) << " (" << FormatPercentage( percentage ) <<")" ;
return str.str();
}
| void QmitkMemoryUsageIndicatorView::UpdateMemoryUsage | ( | ) | [protected, slot] |
Definition at line 67 of file QmitkMemoryUsageIndicatorView.cpp.
References GetMemoryDescription(), mitk::MemoryUtilities::GetProcessMemoryUsage(), mitk::MemoryUtilities::GetTotalSizeOfPhysicalRam(), Ui_QmitkMemoryUsageIndicator::m_Label, Ui_QmitkMemoryUsageIndicator::m_LED, m_LEDGreen, m_LEDOrange, m_LEDRed, m_LEDYellow, and m_PreviousState.
Referenced by QmitkMemoryUsageIndicatorView().
{
size_t processSize = mitk::MemoryUtilities::GetProcessMemoryUsage();
size_t totalSize = mitk::MemoryUtilities::GetTotalSizeOfPhysicalRam();
float percentage = ( (float) processSize / (float) totalSize ) * 100.0;
m_Label->setText( GetMemoryDescription( processSize, percentage ).c_str() );
if ( percentage < 50.0 )
{
if(m_PreviousState != 0)
{
m_LED->setPixmap(m_LEDGreen);
m_PreviousState = 0;
m_LED->update();
}
}
else if ( percentage < 65.0 )
{
if(m_PreviousState != 1)
{
m_LED->setPixmap(m_LEDYellow);
m_PreviousState = 1;
m_LED->update();
}
}
else if ( percentage < 80.0 )
{
if(m_PreviousState != 2)
{
m_LED->setPixmap(m_LEDOrange);
m_PreviousState = 2;
m_LED->update();
}
}
else
{
if(m_PreviousState != 3)
{
m_LED->setPixmap(m_LEDRed);
m_PreviousState = 3;
m_LED->update();
}
}
}
QPixmap QmitkMemoryUsageIndicatorView::m_LEDGreen [protected] |
Definition at line 47 of file QmitkMemoryUsageIndicatorView.h.
Referenced by QmitkMemoryUsageIndicatorView(), and UpdateMemoryUsage().
QPixmap QmitkMemoryUsageIndicatorView::m_LEDOrange [protected] |
Definition at line 49 of file QmitkMemoryUsageIndicatorView.h.
Referenced by QmitkMemoryUsageIndicatorView(), and UpdateMemoryUsage().
QPixmap QmitkMemoryUsageIndicatorView::m_LEDRed [protected] |
Definition at line 50 of file QmitkMemoryUsageIndicatorView.h.
Referenced by QmitkMemoryUsageIndicatorView(), and UpdateMemoryUsage().
QPixmap QmitkMemoryUsageIndicatorView::m_LEDYellow [protected] |
Definition at line 48 of file QmitkMemoryUsageIndicatorView.h.
Referenced by QmitkMemoryUsageIndicatorView(), and UpdateMemoryUsage().
char QmitkMemoryUsageIndicatorView::m_PreviousState [protected] |
Definition at line 51 of file QmitkMemoryUsageIndicatorView.h.
Referenced by QmitkMemoryUsageIndicatorView(), and UpdateMemoryUsage().
1.7.2