29 lines
713 B
C++
29 lines
713 B
C++
#ifndef RANGE_H
|
|
#define RANGE_H
|
|
|
|
/// @brief Signed range. May be renamed to SignedRange later
|
|
class Range16 {
|
|
public:
|
|
Range16();
|
|
Range16(float range); // range -1..1
|
|
Range16(short range); // range -32768..32767
|
|
|
|
inline Range16 operator-(Range16 a);
|
|
inline Range16 operator+(Range16 a);
|
|
inline Range16 &operator-();
|
|
|
|
inline bool operator==(Range16 a);
|
|
inline bool operator!=(Range16 a);
|
|
|
|
inline bool operator<(Range16 a);
|
|
inline bool operator>(Range16 a);
|
|
inline bool operator<=(Range16 a);
|
|
inline bool operator>=(Range16 a);
|
|
|
|
protected:
|
|
// How do we make sure we have 16 bit range on every platform?
|
|
// uint16_t range; // 16-bit range
|
|
unsigned short range; // 16-bit range
|
|
};
|
|
|
|
#endif |