68 lines
945 B
C++
68 lines
945 B
C++
/*
|
|
* This file Copyright (C) 2009-2015 Mnemosyne LLC
|
|
*
|
|
* It may be used under the GNU GPL versions 2 or 3
|
|
* or any future license endorsed by Mnemosyne LLC.
|
|
*
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
class Speed
|
|
{
|
|
public:
|
|
Speed() :
|
|
_Bps(0)
|
|
{
|
|
}
|
|
|
|
double KBps() const;
|
|
|
|
int Bps() const
|
|
{
|
|
return _Bps;
|
|
}
|
|
|
|
bool isZero() const
|
|
{
|
|
return _Bps == 0;
|
|
}
|
|
|
|
static Speed fromKBps(double KBps);
|
|
|
|
static Speed fromBps(int Bps)
|
|
{
|
|
return Speed(Bps);
|
|
}
|
|
|
|
void setBps(int Bps)
|
|
{
|
|
_Bps = Bps;
|
|
}
|
|
|
|
Speed& operator +=(Speed const& that)
|
|
{
|
|
_Bps += that._Bps;
|
|
return *this;
|
|
}
|
|
|
|
Speed operator +(Speed const& that) const
|
|
{
|
|
return Speed(_Bps + that._Bps);
|
|
}
|
|
|
|
bool operator <(Speed const& that) const
|
|
{
|
|
return _Bps < that._Bps;
|
|
}
|
|
|
|
private:
|
|
Speed(int Bps) :
|
|
_Bps(Bps)
|
|
{
|
|
}
|
|
|
|
private:
|
|
int _Bps;
|
|
};
|