/usr/include/cardinaldirection.h is in libdewalls-dev 1.0.0+ds1-4ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | #ifndef DEWALLS_CARDINALDIRECTION_H
#define DEWALLS_CARDINALDIRECTION_H
#include "angle.h"
#include "unitizeddouble.h"
#include "dewallsexport.h"
namespace dewalls {
class DEWALLS_LIB_EXPORT CardinalDirection {
public:
typedef UnitizedDouble<Angle> UAngle;
inline CardinalDirection() : _ordinal(0) {}
inline QString name() const { return names[_ordinal]; }
inline int ordinal() const { return _ordinal; }
inline UAngle angle() const { return angles[_ordinal]; }
inline CardinalDirection opposite() const { return CardinalDirection((_ordinal + 2) % 4); }
UAngle quadrant(CardinalDirection to, UAngle angle) const;
static const CardinalDirection North;
static const CardinalDirection East;
static const CardinalDirection South;
static const CardinalDirection West;
inline bool operator ==(const CardinalDirection& rhs) const {
return _ordinal == rhs._ordinal;
}
inline CardinalDirection& operator =(CardinalDirection rhs) {
this->_ordinal = rhs._ordinal;
return *this;
}
private:
inline CardinalDirection(int ordinal) : _ordinal(ordinal) {}
UAngle nonnorm_quadrant(CardinalDirection to, UAngle angle) const;
static const QString names[4];
static const UAngle angles[4];
int _ordinal;
};
} // namespace dewalls
#endif // DEWALLS_CARDINALDIRECTION_H
|