transmission/qt/Speed.h

33 lines
800 B
C
Raw Normal View History

2009-04-09 18:55:47 +00:00
/*
* This file Copyright (C) 2009-2015 Mnemosyne LLC
2009-04-09 18:55:47 +00:00
*
* It may be used under the GNU GPL versions 2 or 3
* or any future license endorsed by Mnemosyne LLC.
2009-04-09 18:55:47 +00:00
*
*/
#pragma once
2009-04-09 18:55:47 +00:00
class Speed
{
public:
2013-09-14 22:45:04 +00:00
Speed (): _Bps (0) {}
2015-06-12 22:12:12 +00:00
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+= (const Speed& that) { _Bps += that._Bps; return *this; }
Speed operator+ (const Speed& that) const { return Speed (_Bps + that._Bps); }
bool operator< (const Speed& that) const { return _Bps < that._Bps; }
2015-06-12 22:12:12 +00:00
private:
Speed (int Bps): _Bps (Bps) {}
private:
int _Bps;
2009-04-09 18:55:47 +00:00
};